版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Mathematica編程語(yǔ)句與例題編程語(yǔ)句與例題 8.1全局變量、局部變量、過(guò)程全局變量、局部變量、過(guò)程 8.1.1全局變量全局變量 在Mathematica中鍵入的各種命令或在Mathematica的程序語(yǔ)句中, 變量被賦值后, 必須用Mathematica清除變量的命令才能使其還原為符號(hào)的變量, 稱為全局變量全局變量。察看某變量是否為全局變量,可以鍵入命令:?變量名變量名Global變量名變量名 說(shuō)明該變量是全局變量,否則,就不是全局變量。 例如例如:要知道變量w是否為全局變量,可以鍵入: ? w鍵入執(zhí)行命令后,顯示結(jié)果 Globalw w = 2 說(shuō)明w是全局變量,且有數(shù)值2。8.1.
2、2 局部變量局部變量o 在在Mathematica的命令或程序中出現(xiàn)的任何合法的變量的命令或程序中出現(xiàn)的任何合法的變量名符號(hào),如果該變量名所代表的變量沒(méi)有被賦值,則它就作名符號(hào),如果該變量名所代表的變量沒(méi)有被賦值,則它就作為數(shù)學(xué)算式中的符號(hào)參與數(shù)學(xué)的公式推導(dǎo)和運(yùn)算;如果該變?yōu)閿?shù)學(xué)算式中的符號(hào)參與數(shù)學(xué)的公式推導(dǎo)和運(yùn)算;如果該變量被賦值了,則用該變量所賦的值參與對(duì)應(yīng)的數(shù)學(xué)公式推導(dǎo)量被賦值了,則用該變量所賦的值參與對(duì)應(yīng)的數(shù)學(xué)公式推導(dǎo)和運(yùn)算。因此,當(dāng)用戶在做符號(hào)運(yùn)算時(shí)使用的符號(hào)含有被賦和運(yùn)算。因此,當(dāng)用戶在做符號(hào)運(yùn)算時(shí)使用的符號(hào)含有被賦了值的變量名,則就會(huì)出現(xiàn)察覺不到的錯(cuò)誤。為克服這種錯(cuò)了值的變量名,
3、則就會(huì)出現(xiàn)察覺不到的錯(cuò)誤。為克服這種錯(cuò)誤,可以在使用誤,可以在使用Mathematica的命令之前的命令之前, 先用先用Clear 變量變量1,變量變量2,將要使用的所有變量名做清除處將要使用的所有變量名做清除處理理, 就可以避免上述錯(cuò)誤。就可以避免上述錯(cuò)誤。o 不同于全局變量不同于全局變量, 稱變量的賦值效果只在某一模塊內(nèi)有效的稱變量的賦值效果只在某一模塊內(nèi)有效的變量為變量為局部變量局部變量。模塊是模塊是Mathematica為使用局部變量而建立的基本結(jié)構(gòu)為使用局部變量而建立的基本結(jié)構(gòu)Mathematica 中中Module模塊的命令為模塊的命令為:Module變量表變量表, 表達(dá)式表達(dá)式
4、例如例如: 在Mathematica鍵入 In4:= u=5; In5: = s=Moduleu, v=1, u=1; v=u+v+3 Out5= 5 In6:= Printu, , v, ,s Out6= 5 v 5在在Mathematica中使用局部變量很簡(jiǎn)單中使用局部變量很簡(jiǎn)單, 只要把涉及到的局部只要把涉及到的局部變量用大括弧變量用大括弧 括起來(lái)括起來(lái), 放在放在Module模塊命令的模塊命令的變量表變量表位置位置, 并把相應(yīng)的語(yǔ)句寫成語(yǔ)句序列放在并把相應(yīng)的語(yǔ)句寫成語(yǔ)句序列放在Module模塊命令的模塊命令的表達(dá)式位置即可。表達(dá)式位置即可。例如例如: Mathematica中有如下命令
5、中有如下命令 In7:=s=Sinx; In8:=u= Cosx; In9:=Ds*u, x Out9= Cos2x - Sin2x命令中的變量命令中的變量s, u的值將會(huì)影響隨后的命令的值將會(huì)影響隨后的命令, 如果寫成如果寫成 In10:= Modules, u, x, s=Sinx;u= Cosx; Ds*u, x Out10= Cos2x$1 - Sin2x$1 此時(shí)命令中的變量此時(shí)命令中的變量s, u就是局部變量就是局部變量, 它們的值將不會(huì)影響隨它們的值將不會(huì)影響隨后的命令。后的命令。 8.1.3 過(guò)程過(guò)程在Mathematica中,一個(gè)用分號(hào)隔開的表達(dá)式序列稱為一個(gè)復(fù)合表達(dá)式復(fù)合表
6、達(dá)式,它也稱為一個(gè)過(guò)程過(guò)程。例如例如: In11:=s=1;u=s+3;u*u Out11=16 Mathematica的過(guò)程可以作為Module模塊命令的表達(dá)式,如果不關(guān)心局部變量問(wèn)題,可以把一個(gè)過(guò)程用小括號(hào)括起來(lái)構(gòu)成一個(gè)整體,這樣可以用由小括號(hào)括起來(lái)的過(guò)程來(lái)定義一個(gè)函數(shù)。例如例如:已知有n個(gè)元素的一個(gè)數(shù)表x=a1,a2,an,定義一個(gè)計(jì)算此類數(shù)表最大數(shù)與最小數(shù)平方差的函數(shù),用過(guò)程來(lái)定義可以寫為: In12:=gx_:=(m =Maxx;n = Minx;m*m - n*n) 如果不用小括號(hào)括起來(lái),而是寫為 In13:=gx_:=m =Maxx;n = Minx;m*m-n*n則In13定義
7、的gx實(shí)際上是Maxx,不是數(shù)表最大數(shù)與最小數(shù)平方差函數(shù),應(yīng)該注意過(guò)程加小括號(hào)與不加括號(hào)的區(qū)別。本例題還可以用模塊來(lái)定義函數(shù): In14:=gx_:=Modulem, n, m =Maxx;n = Minx;m*m-n*n 8.2條件控制語(yǔ)句條件控制語(yǔ)句lMathematica涉及條件選擇的語(yǔ)句有好幾種,這里介紹常用的三種語(yǔ)句: if 語(yǔ)句語(yǔ)句, Which 語(yǔ)句語(yǔ)句,Switch 語(yǔ)句語(yǔ)句。8.2.1 If 語(yǔ)句語(yǔ)句lIf 語(yǔ)句的一般形式為語(yǔ)句的一般形式為: If 條件條件, 語(yǔ)句或語(yǔ)句列語(yǔ)句或語(yǔ)句列具體形式有l(wèi) 命令形式命令形式1:If 條件條件, 語(yǔ)句語(yǔ)句1 功能:功能:如果條件成立,則
8、執(zhí)行對(duì)應(yīng)的語(yǔ)句1,并將語(yǔ)句執(zhí)行結(jié)果作為If語(yǔ)句的值,如果條件不成立,不執(zhí)行語(yǔ)句1。l 命令形式命令形式2:If 條件條件, 語(yǔ)句語(yǔ)句1, 語(yǔ)句語(yǔ)句2 功能:功能:根據(jù)條件的成立與否確定執(zhí)行哪一個(gè)語(yǔ)句,具體執(zhí)行為:條件成立時(shí),執(zhí)行語(yǔ)句1,否則,執(zhí)行語(yǔ)句2,并將語(yǔ)句執(zhí)行結(jié)果作為If語(yǔ)句的值。l 命令形式命令形式3:If 條件條件, 語(yǔ)句語(yǔ)句1, 語(yǔ)句語(yǔ)句2, 語(yǔ)句語(yǔ)句3功能:功能:根據(jù)條件的成立與否確定執(zhí)行哪一個(gè)語(yǔ)句, 具體執(zhí)行為:條件成立時(shí),執(zhí)行語(yǔ)句1,條件不成立時(shí),執(zhí)行語(yǔ)句2,否則,執(zhí)行語(yǔ)句3, 并將語(yǔ)句執(zhí)行結(jié)果作為If語(yǔ)句的值。例例1:用用Mathematica命令描述下面問(wèn)題命令描述下面問(wèn)
9、題:先產(chǎn)生一個(gè)函數(shù)先產(chǎn)生一個(gè)函數(shù)0,1內(nèi)的內(nèi)的隨機(jī)實(shí)數(shù)隨機(jī)實(shí)數(shù),再判斷該隨機(jī)數(shù)是否小于再判斷該隨機(jī)數(shù)是否小于0.5, 如果小于如果小于0.5, 則將此則將此隨機(jī)數(shù)顯示出來(lái)隨機(jī)數(shù)顯示出來(lái),否則顯示否則顯示”*”。n解解: Mathematica 命令為: In1:= p= Random; Ifp0.5, p, “*”O(jiān)ut1=0.202857In2:= If(p=Random)0.5, p, “*”)Out2= *例例2: 寫出分段函數(shù)的Mathematica自定義函數(shù)形式,并畫出其在3,3上的圖形n解解: 因此Mathematica 命令為: In3:= fx_:=Ifx1, x+Sinx,
10、x*Cosx (或或fx_:=Ifx0時(shí)方程有兩個(gè)實(shí)根; 當(dāng)0,two real roots,0,two real roots, w0,two complex w0,two complex roots,wroots,w = 0,duplicate roots ) = 0,duplicate roots )In9:=g0,1,2In9:=g0,1,2Out9= two real rootsOut9= two real rootsIn10:=g3,1,2In10:=g3,1,2Out10= two complex rootsOut10= two complex rootsIn11:=g3,0,0I
11、n11:=g3,0,0Out11=duplicate rootsOut11=duplicate roots 例例5 任給向量x=(x1,x2,xn),定義一個(gè)可以計(jì)算如下三種向量范數(shù)的函數(shù):n解解:n In12:= normx_,p_:=Whichp=1,SumAbsxi,i,1,Lengthx, p=2,SqrtSumAbsxi2,i,1, Lengthx, True,MaxAbsx In13:=x=3, -4, 0; In14:= normx,1 Out14=7 In15:= normx,2 Out15=5 In16:= normx,0 Out16=4iniiniixMaxxxxxx212
12、11例例6: 寫出分段函數(shù)的Mathematica自定義函數(shù)形式,并畫出其在0,60上的圖形。n解解: 因此Mathematica 命令為: In17:=fx_:= Whichx=0,0,x=10,10+2x,x=20,30,x=40,30-(x-20)/2, x=50,20,x60,0 nIn18:= Plotfx,x,0,6000102010301020( )30(20)/22040204050202(50)5060060 xxxxf xxxxxxx 8.2.3 Switch 語(yǔ)句語(yǔ)句l命令形式:命令形式:Switch表達(dá)式表達(dá)式, 模式模式1,語(yǔ)句語(yǔ)句1,模式模式2,語(yǔ)句語(yǔ)句2, . 模
13、式模式n,語(yǔ)句語(yǔ)句n l功能功能: 先計(jì)算表達(dá)式,然后按模式1,模式2,的順序依次比較與表達(dá)式結(jié)果相同的模式,找到的第一個(gè)相同的模式,則將此模式對(duì)應(yīng)的語(yǔ)句計(jì)算計(jì)算結(jié)果作為Switch語(yǔ)句的結(jié)果。 Switch語(yǔ)句是根據(jù)表達(dá)式的執(zhí)行結(jié)果來(lái)選擇對(duì)應(yīng)的執(zhí)行語(yǔ)句,它類似于一般計(jì)算機(jī)語(yǔ)言的Case語(yǔ)句 例例7: 用函數(shù)描述如下結(jié)果:任給一個(gè)整數(shù)x, 顯示它被3除的余數(shù)。解解: Mathematica: Mathematica自定義函數(shù)自定義函數(shù): :l In19:=fxIn19:=fx_:=SwitchModx,3,_:=SwitchModx,3, 0, Print0 is the remainder
14、on division of ,x ,by 3, 0, Print0 is the remainder on division of ,x ,by 3, 1, Print1 is the remainder on division of ,x ,by 3, 1, Print1 is the remainder on division of ,x ,by 3, 2, Print2 is the remainder on division of ,x ,by 3 2, Print2 is the remainder on division of ,x ,by 3 l In20:= f126 In2
15、0:= f126 l Out20= 0 is the remainder on division of 126 by 3Out20= 0 is the remainder on division of 126 by 3l In21:= f346 In21:= f346 l Out21= 1 is the remainder on division of 346 by 3Out21= 1 is the remainder on division of 346 by 3l In22:= f599 In22:= f599 l Out22= 2 is the remainder on division
16、 of 599 by 3Out22= 2 is the remainder on division of 599 by 38.3循環(huán)控制語(yǔ)句循環(huán)控制語(yǔ)句lMathematica的循環(huán)控制語(yǔ)句有三種語(yǔ)句的循環(huán)控制語(yǔ)句有三種語(yǔ)句: Do 語(yǔ)句語(yǔ)句,For語(yǔ)句語(yǔ)句,While語(yǔ)句語(yǔ)句。 為處理有時(shí)需要中途退出循環(huán)語(yǔ)句的問(wèn)題為處理有時(shí)需要中途退出循環(huán)語(yǔ)句的問(wèn)題, Mathematica 還提供了在執(zhí)還提供了在執(zhí)行循環(huán)語(yǔ)句時(shí)退出循環(huán)體的語(yǔ)句行循環(huán)語(yǔ)句時(shí)退出循環(huán)體的語(yǔ)句:l Returnexpr 退出函數(shù)所有過(guò)程和循環(huán)退出函數(shù)所有過(guò)程和循環(huán),返回返回expr值值l Break 結(jié)束本層循環(huán)結(jié)束本層循環(huán)l
17、Continue 轉(zhuǎn)向本層轉(zhuǎn)向本層For語(yǔ)句或語(yǔ)句或While語(yǔ)句的下一次循環(huán)語(yǔ)句的下一次循環(huán)在在Mathematica的循環(huán)結(jié)構(gòu)中的循環(huán)結(jié)構(gòu)中,使用如下表示式使用如下表示式,可以達(dá)到簡(jiǎn)潔可以達(dá)到簡(jiǎn)潔,快速的目的快速的目的.lk+ 表示賦值關(guān)系表示賦值關(guān)系 k = k+1 , l+k 表示先處理表示先處理k的值的值,再做賦值再做賦值 k=k+1lk- 表示賦值關(guān)系表示賦值關(guān)系 k = k-1l-k 表示先處理表示先處理k的值的值,再做賦值再做賦值 k=k-1 lx,y=y,x 表示交換表示交換x與與y 值值lx+=k 表示表示 x = x + klx*=k 表示表示 x = x * k8.3.
18、1 Do 語(yǔ)句語(yǔ)句Do 語(yǔ)句的一般形式為 Do循環(huán)體循環(huán)體,循環(huán)范圍循環(huán)范圍具體形式有l(wèi)命令形式命令形式1:Doexpr, n 功能:功能:循環(huán)執(zhí)行n次表達(dá)式expr 。l命令形式命令形式2:Doexpr, i, imin, imax 功能:功能:按循環(huán)變量i 為imin,imin+1,imin+2,imax循環(huán)執(zhí)行imax-imin+1次表達(dá)式expr。l命令形式命令形式3:Doexpr, i, imin, imax,d 功能:功能:按循環(huán)變量i 為imin,imin+d,imin+2d,imin+nd,循環(huán)執(zhí)行(imax-imin)/d +1次表達(dá)式expr。l命令形式命令形式4:Doex
19、pr, i, imin, imax, j, jmin, jmax 功能:功能:對(duì)循環(huán)變量i為imin,imin+1,imin+2,imax每個(gè)值, 再按循環(huán)變量j的循環(huán)執(zhí)行表達(dá)式expr。這是通常所說(shuō)的二重循環(huán)命令,類似的,可以用在Do命令中再加循環(huán)范圍的方法得到多重循環(huán)命令。例例8 找出300至500之間同時(shí)能被3和11整除的自然數(shù)。n解解: Mathematica 命令為: In23:= DoIfModi,13= 0 & Modi,3= 0,Printi,i,300,500 312 351 390 429 Out23= 468n例例9 找出方程在0,100內(nèi)的整數(shù)解。n解解:nIn
20、24:= Doz =100 x - y; If5x+3y+z/3=100,Printx= ,x, y=,y, z=,z, x,0,100,y,0,100n得解x= 0 y= 25 z= 75x= 4 y= 18 z= 78x= 8 y= 11 z= 81x= 12 y= 4 z= 84100335100zyxzyx 例例10 對(duì)自然數(shù)對(duì)自然數(shù)k從從1開始到開始到10,取取s=1做賦值做賦值s =s*k,并顯示對(duì)應(yīng)的值并顯示對(duì)應(yīng)的值,直到直到s的值的值5終止。終止。 解解: In25:= s=1;Dos*=k;Prints;Ifs5,Break, k,1,10 1 2 68.3.2 For 語(yǔ)句
21、語(yǔ)句 l命令形式:命令形式:Forstat,test,incr,bodyl功能功能:以stat為初值,重復(fù)計(jì)算incr和body直到test為False終止 。這里start為初始值,test為條件,incr為循環(huán)變量修正式,body為循環(huán)體,通常由incr項(xiàng)控制test的變化。l注意注意: 上述命令形式中的start可以是由復(fù)合表達(dá)式提供的多個(gè)初值,如果循環(huán)體生成 Break 語(yǔ)句,則退出For循環(huán); 如果循環(huán)體生成Continue 語(yǔ)句,則由incr的增量進(jìn)入For語(yǔ)句的下一次循環(huán)。l n例例11 指出語(yǔ)句指出語(yǔ)句For i=1;t=x,i*i10,i+,t-;Printt的初的初始值始值
22、,條件條件,循環(huán)變量修正式和循環(huán)體循環(huán)變量修正式和循環(huán)體, 分析執(zhí)行過(guò)程和分析執(zhí)行過(guò)程和顯示結(jié)果。顯示結(jié)果。n解解: 初始值為初始值為i=1;t=x, i為循環(huán)變量;條件為為循環(huán)變量;條件為i*i10;循;循環(huán)變量修正式為環(huán)變量修正式為i+;n循環(huán)體為循環(huán)體為t-;Printt;執(zhí)行過(guò)程為;執(zhí)行過(guò)程為:n 先把變量先把變量i賦初值賦初值1,變量變量t賦初值賦初值x, 因?yàn)橐驗(yàn)?*110滿足滿足i*i10,故執(zhí)行故執(zhí)行i+, t-;Printt的操作的操作, i+ 對(duì)對(duì)i做加做加1操作操作,使使i取值為取值為2, 執(zhí)行循環(huán)體執(zhí)行循環(huán)體t-后后,t值變?yōu)橹底優(yōu)閤-1,Printt的顯的顯示結(jié)果為示
23、結(jié)果為“-1+x”。進(jìn)入第二次循環(huán)時(shí)。進(jìn)入第二次循環(huán)時(shí),先判別條件是先判別條件是否成立否成立,因?yàn)橛幸驗(yàn)橛?*210滿足條件滿足條件i*i10不滿足條件i*i10,故退出For循環(huán)。8.3.3 While 語(yǔ)句語(yǔ)句 l命令形式:命令形式:Whiletest,bodyl功能:功能:當(dāng)當(dāng)test為True時(shí),計(jì)算body,重復(fù)對(duì)test的判斷和body的計(jì)算,直到test不為True時(shí)終止 。這里test為條件, body為循環(huán)體,通常由body控制test值的變化。如果test不為True,則循環(huán)體不做任何工作l注意注意: 上述命令中,如果循環(huán)體生成 Break 語(yǔ)句,則退出While循環(huán)。例例
24、12:12: 用割線法求解方程x3-2x2+7x+4=0的根,要求誤差|xk-xk-1|10-12,x2=x1-(x1-In28:= WhileAbsx0-x110-12,x2=x1-(x1-x0)x0)* *fx1/(fx1-fx0);x0=x1;x1=x2fx1/(fx1-fx0);x0=x1;x1=x2l In29:= Nx1,12In29:= Nx1,12l Out29= -0.487120155928Out29= -0.487120155928)()()(1112121110kkkkkkkxfxfxfxxxxxx例例1313 編制編制2020以內(nèi)整數(shù)加法自測(cè)程序以內(nèi)整數(shù)加法自測(cè)程序解
25、解: :In30:=For i=1,i=10,i+, In30:=For i=1,i=10,i+, t=RandomInteger,0,10; t=RandomInteger,0,10; s=RandomInteger,0,10; s=RandomInteger,0,10; Printt,+,sPrintt,+,s,=; ,=; y=Input; y=Input; Whiley!=t+sWhiley!=t+s, , Printt,+,sPrintt,+,s,=,y, Wong !Try again!;,=,y, Wong !Try again!;Printt,+,sPrintt,+,s,=;
26、y=Input ;,=; y=Input ;Printt,+,sPrintt,+,s,=,y, Good ,=,y, Good l 執(zhí)行結(jié)果為執(zhí)行結(jié)果為3+0=3+0=3+0=3 Good3+0=3 Good7+3=12 Wong!Ttry7+3=12 Wong!Ttry again! again!7+3=10 Good7+3=10 Good例例14 韋達(dá)(韋達(dá)(VieTa)在)在1593年首次給出了如下關(guān)于圓周率年首次給出了如下關(guān)于圓周率 的關(guān)系式(韋達(dá)公式)的關(guān)系式(韋達(dá)公式)n試用韋達(dá)公式來(lái)寫出計(jì)算圓周率試用韋達(dá)公式來(lái)寫出計(jì)算圓周率 近似值的近似值的Mathematica命令。命令。解解
27、: n利用利用Mathematica自定義函數(shù)命令可以輸入自定義函數(shù)命令可以輸入Mathematica命令為命令為:In31:= vietak_:=Moduleu, u=NProductCosPi/2(n+1),n,1,k,20; Return2/u In32:= Tablen, v=vietan, NPi,20- v ,n,1,10,2 Out32= 1, 3.0614674589207181738, 0.0801251946690750646, 3, 3.1365484905459392638, 0.0050441630438539746, 5, 3.1412772509327728681
28、, 0.0003154026570203704, 7, 3.1415729403670913841, 0. 0000197132227018543, 9, 3.141591421511199974, 1.232078593264 10-6 lim2coscoslimcos2121212111kvietakvietakknknknnnn令121cos2nn8.3.4 迭代語(yǔ)句迭代語(yǔ)句在數(shù)值計(jì)算中在數(shù)值計(jì)算中,經(jīng)常遇到要進(jìn)行迭代計(jì)算經(jīng)常遇到要進(jìn)行迭代計(jì)算,即利用迭代格式即利用迭代格式: xk+1= (x k), 已知已知x 0 來(lái)求出迭代序列來(lái)求出迭代序列x 1,x 2,這里迭代函數(shù)這里迭代函數(shù)
29、為已知函數(shù)為已知函數(shù),Mathematica 有有如下幾個(gè)命令處理這類問(wèn)題如下幾個(gè)命令處理這類問(wèn)題:l命令形式命令形式1:Nest迭代函數(shù)迭代函數(shù) , 迭代初值迭代初值x0,迭代次數(shù)迭代次數(shù)n 功能:根據(jù)迭代初值功能:根據(jù)迭代初值x0及迭代格式及迭代格式:xk+1= (xk), 計(jì)算出計(jì)算出xn ,并將此值作為并將此值作為 Nest語(yǔ)句的值。語(yǔ)句的值。l命令形式命令形式2:NestList迭代函數(shù)迭代函數(shù) , 迭代初值迭代初值x0,迭代次數(shù)迭代次數(shù)n 功能:根據(jù)迭代初值功能:根據(jù)迭代初值x0及迭代格式及迭代格式:xk+1= (xk), 計(jì)算出計(jì)算出x 1,x 2,xn ,并并將將 x 0,x
30、1,x 2,xn 作為作為NestList語(yǔ)句的值。語(yǔ)句的值。例例1515 根據(jù)迭代格式根據(jù)迭代格式:x:xk+1k+1=lg(x=lg(xk k+2),+2),及迭代初值及迭代初值x0=1.0,x0=1.0,(1)(1)計(jì)算出計(jì)算出x7 ,x7 ,(2)(2)顯示顯示 x0,x1,x2,x7 x0,x1,x2,x7 (3)(3)顯示顯示lg(x+2)lg(x+2)的的1,21,2次自復(fù)合函數(shù)次自復(fù)合函數(shù)l 解解: Mathematica: Mathematica命令為命令為In33:=qxIn33:=qx_:=Log10,x+2 _:=Log10,x+2 In34:=Nestq,1.,7In
31、34:=Nestq,1.,7Out34=0.375816 Out34=0.375816 In35:=NestListq,1.,7In35:=NestListq,1.,7Out35=1.,0.477121, 0.393947, 0.379115, 0.376415, Out35=1.,0.477121, 0.393947, 0.379115, 0.376415, 0.375922, 0.375832, 0.3758160.375922, 0.375832, 0.375816In36:=NestListqIn36:=NestListq, x, 2 , x, 2 Out36= Out36= 1010
32、22,102,LogLogxLogLogLogxLogx讀寫 Mathematica 文件 l當(dāng)使用基于文本的 Mathematica 界面時(shí),就需要經(jīng)常讀寫含有定義和結(jié)果的文件. 讀文件 l顯示文件 factors 的內(nèi)容 lIn1:= l讀入一個(gè)文件,返回值是文件的最后一個(gè)表達(dá)式 lIn2:=lOut2= l 當(dāng) Mathematica 找不到所要文件時(shí),它顯示一個(gè)信息,返回值為 $Failed l In3:= l Out3= $Failed l Mathematica 的輸入文件可以包含任意數(shù)目的表達(dá)式. 每個(gè)表達(dá)式必須從新的一行開始,它 可以占有許多行. 在交互式的 Mathemati
33、ca 對(duì)話中,當(dāng)表達(dá)式完成后 就進(jìn)行處理. 但是在一個(gè)文件中,可以在任何位置插入一個(gè)空行, 這不產(chǎn)生任何影響.l用 file 時(shí),Mathematica 把新表達(dá)式加在文件之后,而用 expr file 時(shí),Mathematica 清除文件中所有內(nèi)容,然后把 expr 寫入文件.當(dāng)用 或 向文件寫入表達(dá)式時(shí),這些表達(dá)式一般是用輸入形式,以便再將他們讀入 Mathematica. 有時(shí)需要用別的形式保存表達(dá)式,這可以通過(guò)將這些表達(dá)式包含在 OutputForm 等格式指令中來(lái)實(shí)現(xiàn).l這是按輸出形式將一個(gè)表達(dá)式寫入文件 tmplIn8:= l此時(shí) tmp 文件中的表達(dá)式是輸出形式lIn9:= l使用文件的最常用目的是保存 Mathematica 對(duì)象的定義,以便在隨后的 Mathematica 對(duì)話中再讀入它們. 算符 和 將表達(dá)式保存在文件中. 也可以用函數(shù) Save 按適當(dāng)?shù)男问饺ケ4?Mathematica 對(duì)象的完整定義以便在隨后 的 Mathematica 對(duì)話中執(zhí)行. 寫出定義 l給符號(hào) a 指定一個(gè)值 lIn10:=lOut10=l用 Save 將a的定義寫入文件lIn11:= l這是在文件中保存
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園傳染病預(yù)防工作領(lǐng)導(dǎo)小組
- 年度第一學(xué)期歷史科期末考試試卷
- 高考語(yǔ)文分鐘專題突破(2):字形
- 餐飲娛樂(lè)場(chǎng)所保安工作經(jīng)驗(yàn)
- 能源行業(yè)話務(wù)員工作心得
- 環(huán)保行業(yè)話務(wù)員工作成果
- 聚焦患者皮膚科年終總結(jié)
- 印刷行業(yè)月度個(gè)人工作計(jì)劃
- 物流行業(yè)運(yùn)輸優(yōu)化咨詢
- 家政服務(wù)營(yíng)業(yè)員工作總結(jié)
- 齊魯名家 談方論藥智慧樹知到期末考試答案2024年
- 小學(xué)六年級(jí)數(shù)學(xué)100道題解分?jǐn)?shù)方程
- 南京工業(yè)大學(xué)橋梁工程課程設(shè)計(jì)
- 閱讀題賒小雞
- 中國(guó)風(fēng)圍棋對(duì)弈雅致文藝教育培訓(xùn)活動(dòng)策劃版
- 鋼管購(gòu)銷合同
- 基于51單片機(jī)的簡(jiǎn)易計(jì)算器時(shí)間顯示(LCD1602顯示)
- 2022國(guó)開大學(xué)電大??啤掇r(nóng)科基礎(chǔ)化學(xué)》期末試題及答案
- 《眼睛結(jié)構(gòu)與功能》PPT課件.ppt
- 村委會(huì)實(shí)虛線信紙.
- GB∕T 39757-2021 建筑施工機(jī)械與設(shè)備 混凝土泵和泵車安全使用規(guī)程
評(píng)論
0/150
提交評(píng)論