10Mathematica编程.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十讲 Mathematica 编程 8.1全局变量、局部变量、过程 8.1.1全局变量 在Mathematica中键入的各种命令或在Mathematica的程序语句中, 变量被赋值后, 必须用Mathematica清除变量的命令才能使其还原为符号的变量, 称为全局变量。察看某变量是否为全局变量,可以键入命令: ?变量名 Global`变量名… 说明该变量是全局变量,否则,就不是全局变量。 例如:要知道变量w是否为全局变量,可以键入: ? w 键入执行命令后,显示结果 Global`w w = 2 说明w是全局变量,且有数值2。 8.1.2 局部变量 在Mathematica的命令或程序中出现的任何合法的变量名符号,如果该变量名所代表的变量没有被赋值,则它就作为数学算式中的符号参与数学的公式推导和运算;如果该变量被赋值了,则用该变量所赋的值参与对应的数学公式推导和运算。因此,当用户在做符号运算时使用的符号含有被赋了值的变量名,则就会出现察觉不到的错误。为克服这种错误,可以在使用Mathematica的命令之前, 先用Clear[ 变量1,变量2,…]将要使用的所有变量名做清除处理, 就可以避免上述错误。 不同于全局变量, 称变量的赋值效果只在某一模块内有效的变量为局部变量。 Mathematica 中Module模块的命令为: Module[{变量表}, 表达式 ] 例如: 在Mathematica键入 In[4]:= u=5; In[5]: = s=Module[{u, v=1}, u=1; v=u+v+3] Out[5]= 5 In[6]:= Print[u, , v, ,s] Out[6]= 5 v 5 在Mathematica中使用局部变量很简单, 只要把涉及到的局部变量用大括弧{ }括起来, 放在Module模块命令的{变量表}位置, 并把相应的语句写成语句序列放在Module模块命令的表达式位置即可。 例如: Mathematica中有如下命令 In[7]:=s=Sin[x]; In[8]:=u= Cos[x]; In[9]:=D[s*u, x] Out[9]= Cos[x]2-Sin[x]2 命令中的变量s, u的值将会影响随后的命令, 如果写成 In[10]:= Module[{s, u, x}, s=Sin[x];u= Cos[x]; D[s*u, x]] Out[10]= Cos[x$1]2 - Sin [x$1]2 此时命令中的变量s, u就是局部变量, 它们的值将不会影响随后的命令。 8.1.3 过程 8.2条件控制语句 Mathematica涉及条件选择的语句有好几种,这里介绍常用的三种语句: if 语句, Which 语句,Switch 语句。 8.2.1 If 语句 If 语句的一般形式为: If[ 条件, 语句或语句列] 具体形式有 命令形式1:If [条件, 语句1] 功能:如果条件成立,则执行对应的语句1,并将语句执行结果作为If语句的值,如果条件不成立,不执行语句1。 命令形式2:If [条件, 语句1, 语句2] 功能:根据条件的成立与否确定执行哪一个语句,具体执行为:条件成立时,执行语句1,否则,执行语句2,并将语句执行结果作为If语句的值。 命令形式3:If [条件, 语句1, 语句2, 语句3] 功能:根据条件的成立与否确定执行哪一个语句, 具体执行为:条件成立时,执行语句1,条件不成立时,执行语句2,否则,执行语句3, 并将语句执行结果作为If语句的值。 例1:用Mathematica命令描述下面问题:先产生一个函数[0,1]内的随机实数,再判断该随机数是否小于0.5, 如果小于0.5, 则将此随机数显示出来,否则显示”*”。 解: Mathematica 命令为: In[1]:= If[(p=Random[])0.5,p,*] Out[1]=0.202857 In[2]:= If[(p=Random[])0.5,p,*] Out[2]= * 例2: 写出分段函数 的Mathematica自定义函数形式,并画出其在[3,3]上的图形 解: 因此Mathematica 命令为: In[3]:= f[x_]:=If[x1, x+Sin[x], x*Cos[x]] (或f[x_]:=If[x1,x+Sin[x],x*Cos[x],err]) In[4]:= Plot[f[x],

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档