MATHEMATICA编程语言基础.ppt
《MATHEMATICA编程语言基础.ppt》由会员分享,可在线阅读,更多相关《MATHEMATICA编程语言基础.ppt(58页珍藏版)》请在三一办公上搜索。
1、1,Mathematica编程语言基础,专题5:编程,2,纯函数,没有名字的函数,可用如下方式定义Functionx,body or Functionx1,x2,bodyBody&自变量为#1,#2,#3.纯函数省去了函数命名,常常与Map,Apply,Nest等函数结合使用,3,#表示纯函数第一个变量#n表示纯函数第n个变量#表示纯函数第所有变量序列#n表示纯函数从第n个变量开始的变量序列,4,具有非符号头部的表达式,这是由纯函数所产生的一种结果,5,6,一些常用函数运算,Compositionf,g,函数的复合,相当于fgInvereFunctionff的反函数Identity恒等函数Th
2、roughpf1,f2x 给出pf1x,f2xOperatep,fx给出pfx,7,8,模式的命名(pattern),_任意表达式x_名为x的任意表达式x:pattern与pattern匹配的名为x的表达式,9,模式中表达式的限制,x_h具有头部为h的表达式x_Integerx_Realx_Complexx_Listx_Symbol,10,限制模式,pattern/;condition条件满足时模式匹配lhs:=rhs/;condition条件满足时使用定义lhs:rhs/;condition条件满足时使用规则,11,测试数学特性的常用函数,12,多种选择方案|,13,可以赋给函数的属性,通过
3、SetAttributes赋予函数属性通过Attributes获得函数属性Orderless交换性fa,b=fb,aFlat结合性ffa,b=fa,bOneIdentity恒等fa=a,14,15,变量个数不确定以及模式默认值,_可以表示个数不确定的变量_可以表示零个或多个变量两者其他用法与_相同x_:x0表示模式x具有默认值x0 x_.表示变量x具有默认值x_+y_.y的默认值为0 x_ y_.y的默认值为1x_y_.y的默认值为1,16,带有默认值的模式可以作为函数的可选变量,17,重复模式,expr.重复一次或多次expr重复零次或多次,18,x=y当x与y的值相等时,返回true,否则
4、返回falsex!=y或xy当x与y的值不相等时,返回true,否则返回falsexyx=y或xy,逻辑判断符号,19,p,优先级:!&|,20,条件命令,If条件,真操作,假操作,其它操作先判断条件;如果是true,执行真操作;如果是false,执行假操作;如果两者都不是,执行其它操作,21,If条件,真操作If条件,真操作,假操作,表达式/;条件仅当条件为True时才执行表达式,22,Which条件1,表达式1,条件2,表达式2,依次计算条件i,给出对应第一个条件为True 的表达式的值;若所有条件i的值都是False,则返回Null,23,Switch表达式,形式1,形1值,形式2,形2
5、值,执行表达式,将结果依次与形式i匹配,给出与第一个可匹配的形式的值;若没有可匹配的形式,则返回Null,24,循环命令,While条件,表达式判断条件,如果为true,执行一次表达式;如果为flase,退出循环。重复上边步骤,直致条件为false表达式可由多个语句组成,用“;”隔开,25,For初始化,条件,增量,表达式执行初始化(只执行一次);判断条件,如果为true,执行一次表达式;如果为flase,退出循环;计算增量,修改条件;重复上边步骤,直致条件为false初始化、条件、增量、表达式都可由多个语句组成,用“;”隔开,26,Do表达式,i,imin,imax,di 按循环描述,重复求
6、值表达式,27,Break 退出最里面的循环Continue 转入当前循环的下一步Returnexpr退出所有循环,返回expr,循环控制命令,28,简单输出语句,循环控制函数自身不输出结果Print变量 or“字符串”输出变量的值或字符串内容不受句末“;”影响,29,例 定义如下函数,使用“/;”定义f x_:=0/;x0 x2,f(x)=,30,使用 If 定义f x_:=If x2,x2,x 使用Which定义f x_:=Which x2,x2,True,x,31,32,例1.写出一元二次方程ax2+bx+c=0判别根的类型的Mathematica自定义函数形式。解:一元二次方程根的判别
7、式为=b2-4ac,当0时方程有两个实根;当0,two real roots,w0,two complex roots,w=0,duplicate roots)In9:=g0,1,2Out9=two real rootsIn10:=g3,1,2Out10=two complex rootsIn11:=g3,0,0Out11=duplicate roots,例2 找出300至500之间同时能被3和11整除的自然数。解:Mathematica 命令为:In23:=DoIfModi,13=0 If5x+3y+z/3=100,Printx=,x,y=,y,z=,z,x,0,100,y,0,100得解x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATHEMATICA 编程 语言 基础

链接地址:https://www.31ppt.com/p-5438837.html