您的当前位置:首页正文

Mathematica使用方法+

来源:步旅网
一、条件控制语句

 Mathematica涉及条件选择的语句有好几种,这里介绍常用的三种语句: if 语句, Which 语句,Switch 语句。

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语句的值。

ex,x1练习1:表示分段函数: f(x)。

xcosx,x1

练习2:判断一元二次方程ax2bxc0的实数根。

2. Which 语句

 命令形式1:Which[条件1,语句1,条件2,语句2, ... ,条件n,语句n]

功能:由条件1开始按顺序依次判断相应的条件是否成立,若第一个成立的条件为条件k,则执行对应的语句k。

 命令形式2:Which[条件1,语句1,条件2,语句2, ... ,条件n,语句n,True,\"字符串\"]

功能:由条件1开始按顺序依次判断相应的条件是否成立,若第一个成立的条件为条件k,则执行对应的语句k,若直到条件n都不成立时,则返回符号字符串。 练习1:写出一元二次方程ax2bxc0根的类型。

3. Switch 语句

 命令形式:Switch[表达式, 模式1,语句1,模式2,语句2, ... 模式n,语句n ]

 功能: 先计算表达式,然后按模式1,模式2,…,的顺序依次比较与表达式结果相同的模式,找到的第一个相同的模式,则将此模式对应的语句计算计算结果作为Switch语句的结果。 Switch语句是根据表达式的执行结果来选择对应的执行语句。

sinx,x02x1,0x1练习1:表示分段函数: f(x)。

lnx,1x2x,other

8.3循环控制语句

 Mathematica的循环控制语句有三种语句: Do 语句,For语句,While语句。

为处理有时需要中途退出循环语句的问题, Mathematica 还提供了在执行循环语句时退出循环体的语句:

 Return[expr] 退出函数所有过程和循环,返回expr值  Break[ ] 结束本层循环

 Continue[ ] 转向本层For语句或While语句的下一次循环 在Mathematica的循环结构中,使用如下表示式,可以达到简洁,快速的目的.

 k++ 表示赋值关系 k = k+1 ,

 ++k 表示先处理k的值,再做赋值 k=k+1  k-- 表示赋值关系 k = k-1

 --k 表示先处理k的值,再做赋值 k=k-1  {x,y}={y,x} 表示交换x与y 值  x+=k 表示 x = x + k  x*=k 表示 x = x * k

1. Do 语句

Do 语句的一般形式为

Do[循环体,{循环范围}] 具体形式有

 命令形式1:Do[expr, {n}] 功能:循环执行n次表达式expr 。  命令形式2:Do[expr, {i, imin, imax}]

功能:按循环变量i 为imin,imin+1,imin+2,…,imax循环执行imax-imin+1次表达式expr。

 命令形式3:Do[expr, {i, imin, imax,d}]

功能:按循环变量i 为imin,imin+d,imin+2d,…,imin+nd,循环执行(imax-imin)/d +1次表达式expr。

 命令形式4:Do[expr, {i, imin, imax}, {j, jmin, jmax}]

功能:对循环变量i为imin,imin+1,imin+2,…,imax每个值, 再按循环变量j的循环执行表达式expr。这是通常所说的二重循环命令,类似的,可以用在Do命令中再加循环范围的方法得到多重循环命令。

练习1:找出1至100之间被11整除的自然数。 练习2:计算(2i1)

i1302. For 语句

 命令形式:For[stat,test,incr,body]

 功能:以stat为初值,重复计算incr和body直到test为False终止 。这里start为初始值,test为条件,incr为循环变量修正式,body为循环体,通常由incr项控制test的变化。

 注意: 上述命令形式中的start可以是由复合表达式提供的多个初值,如果循环体生成 Break[ ] 语句,则退出For循环; 如果循环体生成Continue[ ] 语句,则由incr的增量进入For语句的下一次循环。

3. While 语句

 命令形式:While[test,body]

 功能:当test为True时,计算body,重复对test的判断和body的计算,直到test不为True时终止 。这里test为条件, body为循环体,通常由body控制test值的变化。如果test不为True,则循环体不做任何工作

 注意: 上述命令中,如果循环体生成 Break[ ] 语句,则退出While循环。

3. 重复运用函数

我们除了可用Do、While、For等进行循环计算外,我们还可以运用函数进行编程。运用函数编程结构你能得出非常有效的程序。例如Nest[f,x,n]允许你对某一表达式重复运用函数f 给出重复运用函数的方式。 Nest[expr,n] FixedPoint[y,expr] NestWhile[f,expr,test] 对表达式expr重复调用函数fn次 对表达式expr重复调用函数fn次,直到结果不变为止 对表达式expr重复调用函数f,直到产生的结果为假时为止

因篇幅问题不能全部显示,请点此查看更多更全内容