【8】數(shù)值計(jì)算_第1頁(yè)
【8】數(shù)值計(jì)算_第2頁(yè)
【8】數(shù)值計(jì)算_第3頁(yè)
【8】數(shù)值計(jì)算_第4頁(yè)
【8】數(shù)值計(jì)算_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、(授課講稿) 吳劍輝第八講 數(shù)值計(jì)算 Logo語(yǔ)言是一種繪畫功能很強(qiáng)的程序設(shè)計(jì)語(yǔ)言。同時(shí),它的計(jì)算功能也毫不遜色??梢哉f,其他計(jì)算機(jī)語(yǔ)言提供的計(jì)算能力,Logo語(yǔ)言都能實(shí)現(xiàn)。一、Logo的數(shù)和算術(shù)運(yùn)算二、變量、函數(shù)及表達(dá)式三、數(shù)值計(jì)算程序選編一、Logo的數(shù)和算術(shù)運(yùn)算1、Logo的數(shù) 、大家熟悉的十進(jìn)制整數(shù)和小數(shù)在Logo語(yǔ)言中任意使用。例如:198913,60285,4.73,13.85,18.0。 、Logo可以小數(shù)形式表示在1.00E6到1.00E+6之間的數(shù)。超過此范圍的數(shù),Logo會(huì)自動(dòng)轉(zhuǎn)換為科學(xué)記數(shù)法。例如:1000000應(yīng)寫成:1.00E+06,1356108應(yīng)寫成:1.36E+

2、11, 4.27 106應(yīng)寫成: 4.27E+06, 5. 31015 應(yīng)寫成:5.30E15。 說明:E前面保留兩位小數(shù)的數(shù),而E后面表示正或負(fù)指數(shù)。( 1.57E+07 ) 想一想,做一做:123108 12344566 987654321 10000000000.000012 0.0000034 765432111 1.698 107 15687347.609 LOGO科學(xué)計(jì)數(shù)法是多少?科學(xué)計(jì)數(shù)法是多少? Random x 此函數(shù)能隨機(jī)地產(chǎn)生 1-X 間的一個(gè)正整數(shù) Random 20 (random 100)/200 (random 100)*2 (x-1)+ random( y+1-

3、x) 100+ random 100、各種進(jìn)位制數(shù):Logo的數(shù)可用多種進(jìn)位制數(shù)表示。 、十進(jìn)制數(shù),如123、123、二進(jìn)制數(shù),如(1010)2是表示二進(jìn)制數(shù)1010。1010的值:1*23+0*22+1*2+0=8+2=10,是十進(jìn)數(shù)的10。、十六進(jìn)制數(shù),如:(12)16表示十六進(jìn)制數(shù)12。12的值:1*16+2=18,是十進(jìn)制數(shù)18。十進(jìn)制數(shù)012345678910二進(jìn)制數(shù)011011100101110111100010011011十 進(jìn) 制 數(shù)012345678十六進(jìn)制數(shù)012345678十 進(jìn) 制 數(shù)91011121314151626十六進(jìn)制數(shù)90A0B0C0D0E0F101A、十進(jìn)制

4、數(shù)與二進(jìn)制數(shù)、十六進(jìn)制數(shù)換算對(duì)照表 、輸出數(shù)定制函數(shù)(BASE):十進(jìn)制數(shù)轉(zhuǎn)換為多進(jìn)制數(shù)【格式】:MAKE BASE 數(shù)【功能】:BASE是一個(gè)預(yù)設(shè)的變量,它決定了LOGO輸出的數(shù)的進(jìn)制數(shù)。BASE的輸入數(shù)必須是介于2和16之間的整數(shù)。 ?MAKE BASE 2?PRINT 101010?MAKE BASE 16?PRINT 100A、數(shù)制函數(shù) 例題:十進(jìn)制數(shù)173856105二進(jìn)制數(shù) 十六進(jìn)制數(shù) 想一想,做一做:根據(jù)下列表中的十進(jìn)制的數(shù),填寫。 、輸入數(shù)定制函數(shù)(IBASE): 多進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)【格式】:MAKE IBASE 數(shù)【功能】:IBASE是一個(gè)預(yù)設(shè)的變量,它決定了輸入到Log

5、o的數(shù)的進(jìn)制數(shù)。IBASE的輸入必須是介于2和16之間的整數(shù)。Logo輸出的數(shù)的進(jìn)制數(shù)是由系統(tǒng)變量BASE單獨(dú)控制的。 ? MAKE IBASE 16? PRINT 1218? MAKE IBASE 2? PRINT 10100 20例題:想一想,做一做:把下列表中的補(bǔ)寫完整。十進(jìn)制數(shù)18 160 二進(jìn)制數(shù) 10101010000001 十六進(jìn)制數(shù) 3A 632、基本算術(shù)運(yùn)算 、基本運(yùn)算符。 、運(yùn)算規(guī)則。 有括號(hào)時(shí)則括號(hào)優(yōu)先,無(wú)括號(hào)時(shí)則先乘除,后加減,這與數(shù)學(xué)中的運(yùn)算順序相同。 想一想,做一做:寫出下列算術(shù)運(yùn)算的結(jié)果 、(2+(3+(7+9/3)/2)/2)*5 、1+2-3*4/5 、(5/

6、15+(18-12)/12)/(5/(2*3) 、(37+8)/9-2)*4、(15+5)*3/2-(12*2+3) -9/3 、2/2/2/2/(2/2/2)、(9/3+3*5+(88-33)/11*3)) 、1*2*3/3*2*1 加減乘除數(shù)學(xué)中的運(yùn)算符號(hào)+Logo中的運(yùn)算符號(hào)+/在Logo語(yǔ)言中無(wú)論大括號(hào)、中括號(hào)、小括號(hào), 一律用圓括號(hào)。1、變量二、變量、函數(shù)及表達(dá)式 變量即前面程序中用到的形式參數(shù),它可以用在數(shù)值和函數(shù)運(yùn)算中。變量名可以用一個(gè)或多個(gè)字母和數(shù)字符號(hào)組成。在為變量取名時(shí),必須注意Logo語(yǔ)言的命令不能再作變量名。含有多個(gè)字符的變量名中不能夾雜空格或運(yùn)算符號(hào)。 變量名前一定帶

7、有冒號(hào),這是Logo變量同其它語(yǔ)言變量最明顯的區(qū)別。 例如:、以下的變量名是正確的: :X , :Y , :AM , :A2 , :M123 , :3B 、以下的變量名是錯(cuò)誤的: :FD , :CS , :A+B , :M N , :42、基本函數(shù)命 令格 式說 明求隨機(jī)數(shù)RANDOM :X產(chǎn)生一個(gè)從1:X之間(包括1和:X)的隨機(jī)的整數(shù)。取整函數(shù)INT :X取X的整數(shù)部分,小數(shù)部分截去。求余函數(shù)REMAINDER :X :Y求X除以Y所得的余數(shù)。求平方根SQRT :X求X的平方根。3、運(yùn)算與表達(dá)式 由常數(shù)、變量、函數(shù)進(jìn)行各種運(yùn)算的式子稱為表達(dá)式。 表達(dá)式的寫法與數(shù)學(xué)中有些不同,注意:參量符號(hào)

8、中不要忘了冒號(hào)(:),乘號(hào)不能省略。下面舉例說明: X+Y 應(yīng)寫成 :X+:Y 3a+2b1 應(yīng)寫成 3*:a+2*:b1 應(yīng)寫成 1:X/4+:X*:X/5 5412XX三、數(shù)值計(jì)算程序選編 1、使用Logo計(jì)算器:中小學(xué)階段數(shù)學(xué)課本中的所有算式都可以使用Logo進(jìn)行計(jì)算。、計(jì)算:數(shù)學(xué)算式 (88+7) 869 3? (88+7) * 8/6-9) *3 結(jié)果: 353、計(jì)算:數(shù)學(xué)算式711312? 2+1/3-(1+1/7) 結(jié)果: 1.19想一想,做一做:使用Logo計(jì)算器計(jì)算下列算式的結(jié)果)520()15105(10304)2575()732818(125.18)3224 . 251(

9、7412、在屏幕上打印顯示計(jì)算。、知識(shí)點(diǎn):命 令全 稱簡(jiǎn) 寫說 明打印輸出PRINT 輸出項(xiàng)PR 輸出項(xiàng)在屏幕上打印顯示輸出后面的內(nèi)容。顯示輸出TYPE 輸出項(xiàng)印出后不換行, 參數(shù)間無(wú)空格。顯示輸入TURTLETEXT 字或表TT 字或表打印它的輸入在圖形區(qū)中當(dāng)前海龜位置上。輸出數(shù)據(jù)OUTPUT 輸入項(xiàng)OP 輸入項(xiàng)把執(zhí)行的結(jié)果應(yīng)用到其它過程或命令中去, 不直接輸出到屏幕上。賦 值MAKE “變量名 表達(dá)式把表達(dá)式的值賦給變量。 、比較PR、TYPE、TT的顯示方法及屏幕狀態(tài)的差異。 例題分析:計(jì)算兩個(gè)數(shù)(100以內(nèi))相加的算術(shù)題。(由計(jì)算機(jī)隨機(jī)出題并判斷正確與否)、使用PR命令TO JF1 M

10、AKE X RANDOM 101-1 MAKE Y RANDOM 101-1 MAKE Z :X+:Y (PR :X + :Y =) MAKE C READ IF :C=:Z PR 對(duì)了! STOP (PR 錯(cuò)了!正確的答案是 :X+:Y=:Z再試做一道!) JF1ENDTO JF2 MAKE X RANDOM 101-1 MAKE Y RANDOM 101-1 MAKE Z :X+:Y (TYPE :X + :Y =) MAKE C READ IF :C=:Z PR 對(duì)了! STOP (PR 錯(cuò)了!正確的答案是 :X+:Y=:Z) PR 再試做一道! JF2END、使用TYPE命令、使用TT

11、命令TO JF3 DRAW HT PU SETY 120 PD JF3A END TO JF3A MAKE A RANDOM 101-1 MAKE B RANDOM 101-1 MAKE C :A+:B PU SETXY SE -100 YCOR-20 PD (TT :A+:B=) MAKE Q READ PU SETX -40 PD TT :Q IF :Q=:C PU SETXY SE -100 YCOR-20 PD TT 對(duì)了! STOP PU SETXY SE -100 YCOR-20 PD (TT 錯(cuò)了!正確的答案是:A+:B=:C 再試做一道!) JF3A END?JF3 (結(jié)果在圖

12、形窗口顯示)? 100 ? 121 3、使用Logo不同計(jì)算方式進(jìn)行一題多解。 用Logo 過程我們能夠?qū)懗鲈S多趣味數(shù)學(xué)題目,讓計(jì)算機(jī)進(jìn)行復(fù)雜的計(jì)算,可以用不同的方法或命令進(jìn)行編程。 例題分析:求前100個(gè)自然數(shù)的和。方法一:簡(jiǎn)便運(yùn)算法TO JS100A TYPE 1+2+3+.+100= TYPE (1+100)*50 PR END? JS100A 1+2+3+.+100=5050方法二:累加計(jì)算用尾部遞歸TO JS100B :N MAKE S 0 MAKE M 1 E :NENDTO E :N IF :M:N (PR S= :S) STOP MAKE S :S+:M MAKE M :M+1

13、 E :NEND? JS100B 100S = 5050方法三:累加計(jì)算用重復(fù)命令TO JS100C MAKE N 1 MAKE S 0 REPEAT 100MAKE S :S+:N MAKE N :N+1 (PR S= :S)END? JS100C S = 5050方法四:用OP命令TO JSD1 :N IF :N100 OP 0 OP :N+(JSD2 :N+1)ENDTO JS100D MAKE X JSD1 50 MAKE Y JSD2 51 (PR S=:X+:Y)END【指導(dǎo)說明】:? PR JSD1 692415? PR JSD1 70太多的遞歸過程調(diào)用!在函數(shù)JSD1狀態(tài)OP

14、:N + (JSD1 :N - 1)? ? JS100D S = 5050方法五:用步長(zhǎng)型循環(huán)語(yǔ)句TO JS100E MAKE S 0 FOR N 1 100MAKE S :S+:N (PR S= :S)END方法六:用當(dāng)型循環(huán)語(yǔ)句TO JS100F MAKE S 0 MAKE N 1 WHILE :N:N STOP FD :S BK :S SETX XCOR+10 JG :A+1 :S+:A :NEND ? JGQX 20 想一想,試一試: 修改上面的過程,設(shè)計(jì)出如右圖的模式圖形。? LJTX 20 圖1-連加數(shù)的圖形 例題2分析:日本科學(xué)家角谷有個(gè)猜想:對(duì)于任意正整數(shù)N,總可通過若干次以下

15、的變換,使得N變?yōu)?。 變換的規(guī)則是:如果N為偶數(shù),N變?yōu)樗囊话?;如果N為奇數(shù),N變?yōu)樗?倍加1。 請(qǐng)你編寫一個(gè)程序,驗(yàn)證角谷猜想,并以每次變換后的N為長(zhǎng)度畫出一組線段,相鄰兩條線之間間隔30,同時(shí)在每條線段下面用TT命令顯示出變換過程中N的值。(如圖2)? CLXD 9 ? CLXD 11 編寫過程如下:TO CLXD2 :N IF :N=1 CLXD1 :N STOP CLXD1 :N IF NOT (INT :N/2)=(:N/2) MAKE N :N*3+1 CLXD1 :N MAKE N :N/2 CLXD2 :NENDTO CLXD :N DRAW HT PU SETX -30

16、0 PD CLXD2 :NENDTO CLXD1 :N FD :N BK :N PU BK 5 PD TT :N PU FD 5 PD PU RT 90 FD 30 LT 90 PDEND復(fù)合條件: (邏輯判斷 )NOT 條件(非): 條件不成立時(shí)輸出為真(TRUE),條件成立時(shí)輸出為假 (FALSE)。(OR 條件1 條件2 條件3)(或):有一個(gè)成立時(shí), 則輸出為真, 否則輸出為假。(AND 條件1 條件2 條件3)(與):當(dāng)多個(gè)條件中均成立時(shí)則輸出為真, 否則為假。 【指導(dǎo)說明】:? CLXD 35 例題3分析:堆木塊。用每塊方磚邊長(zhǎng)為10,疊成塔形。要求用X塊疊造,有剩余的放于一邊,并

17、顯示說明用去塊數(shù)(S)、堆疊層數(shù)(N)、剩余塊數(shù)(A)。(如圖3所示)圖3-堆木塊? DM 20 TO DM :X DRAW HT MAKE N 0 MAKE A 0 DM1 :N :A :XENDTO ZFX :X REPEAT 4FD :X RT 90ENDTO DM1 :N :A :X IF :A:X MAKE N :N-2 MAKE A :X-(:A-:N-1) DM2 :N DM4 :A STOP MAKE “X :X MAKE N :N MAKE A :A+:N DM1 :N+1 :A :XEND(計(jì)算用X塊方木所能堆疊層數(shù)及剩余塊數(shù))TO DM5 :N :S IF :N1 (TT

18、用去=:S塊) STOP MAKE N :N MAKE S :S+:N DM5 :N-1 :SENDTO DM3 :X :N IF :N:N/2 THEN PR :N STOP IF NOT :N/:I=INT :N/:I THEN GO A (TYPE :I ,) LABEL A YSH :N :I+1END【指導(dǎo)說明】: 、GO W:跳轉(zhuǎn)到標(biāo)號(hào)為W的語(yǔ)句,Logo語(yǔ)言不提倡GO語(yǔ)句。 、LABEL W:設(shè)置標(biāo)號(hào)W。 、求兩數(shù)的最大公約數(shù)。方法二:TO ZDGYS2 :M :N LABEL L MAKE Q INT (:M/:N) MAKE R :M-:Q*:N MAKE M :N MAKE

19、 N :R IF :R0 THEN GO L PR :MEND方法一: TO ZDGYS1 :M :N IF (REMAINDER :M :N)=0 OP :N ZDGYS1 :N REMAINDER :M :N END? PR ZDGYS1 36 5418? ZDGYS2 36 5418、求兩數(shù)的最小公倍數(shù)。TO ZXGBS :M :N MAKE N1 :N MAKE M1 :M IF :M:N THEN GO A MAKE T :M MAKE M :N MAKE N :T LABEL A MAKE S INT (:M/:N) MAKE R :M-:S*:N IF :R=0 THEN GO

20、B MAKE M :N MAKE N :R GO A LABEL B (PR :M1和:N1的最小公倍數(shù)是:M1*:N1/:N)END? ZXGBS 36 48 36 和 48 的最小公倍數(shù)是 144、分解質(zhì)因數(shù)。 TO FJVYS :N TYPE :N TYPE = MAKE I 1 LABEL A MAKE I :I+1 LABEL B IF :ISQRT :N THEN GO C IF (NOT :N/:I=INT :N/:I) THEN GO A TYPE :I TYPE * MAKE N :N/:I GO B LABEL C PR :NEND?FJVYS 72 72=2*2*2*3*

21、3? FJVYS 200 200=2*2*2*5*5? FJVYS 10921092=2*2*3*7*13、比較三個(gè)數(shù)的大小。 TO BJDX :A :B :C (PR A=:AB=:BC=:C) IF :A:B THEN MAKE X :A MAKE Y :B GO P MAKE X :B MAKE Y :A LABEL P IF :Y:C THEN (PR :X:Y:C) STOP IF :X:C THEN (PR :X:C:Y) STOP (PR :C:X:Y)END? BJDX 12 63 11 A=12 B=63 C=1163 12 11? BJDX 0 6.3 11 A=0 B=6

22、.3 C=1111 6.3 0 、只要輸入角度值,計(jì)算機(jī)就能畫出該角度的圖像和平分線。 TO PFJD :JD DRAW HT PU BK 15 PD (TT 輸入角度為:JD度) PU BK 20 PD (TT 平分角度為:JD/2度) PU FD 35 PD RT 90 FD 100 BK 100 LT :JD FD 100 BK 100 RT :JD/2 REPEAT 10FD 5 PU FD 5 PD PU HOMEEND? PFJD 130 、按圖中標(biāo)注的尺寸畫圖,并求陰影部分的面積。 TO JSMJ DRAW HT REPEAT 6FD 80 RT 90 RT 180 HOME PU RT 90 FD 80 LT 90 PD REPEAT 6FD 50 RT 90

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論