必修3課件第一章算法初步_第1頁
必修3課件第一章算法初步_第2頁
必修3課件第一章算法初步_第3頁
必修3課件第一章算法初步_第4頁
必修3課件第一章算法初步_第5頁
已閱讀5頁,還剩26頁未讀 繼續免費閱讀

VIP免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 內容算法的含義流程圖基本算法語句算法案例 結構流 程 圖算法的描述算法自然語言順序結構選擇結構循環結構順序結構選擇結構循環結構輸 語句偽 代 碼循環語句賦值語句條件語句入出算法 重點 理解算法的含義; 掌握算法的三種基本結構; 會用算法語句解決簡單的實際問題。 難點 循環語句; 算法設計。 展開方式 特點 螺旋上升、漸次遞進 整合滲透、前引后連 三線合一、橫向貫通 彈性處理、多樣選擇自然語言自然語言流程圖自然語言流程圖偽代碼自然語言流程圖偽代碼Excel VBA算法 算法的含義(廣義)完成某項工作的方法和步驟(現代)可以用計算機來解決的一類問題的程序 和步驟(教材)有限性、確定性(其他)輸入

2、、輸出、可行性、一般性 算法的特點算法(教材)對一類問題的機械的、統一的求解方法 關于例1例例1 給出求給出求1 + 2 +3 + 4 + 5的一個算法的一個算法算法算法1 按照逐一相加的程序進行按照逐一相加的程序進行第一步第一步 計算1 + 2,得到3;第二步第二步 將第一步中的運算結果3與3相加,得到6;第三步第三步 將第二步中的運算結果6與4相加,得到10;第四步第四步 將第三步中的運算結果10與5相加,得到15 2) 1( nn算法算法2 可以運用公式可以運用公式1 + 2 + + n = 直接計算。直接計算。第一步第一步 取n = 5;第二步第二步 計算 ;第三步第三步 輸出運算結果

3、。2) 1( nn算法 四種圖框類型算法輸入、輸出框處理框判斷框起止框 三種基本算法結構i) 順序結構算法ii) 選擇結構ABpYNAB 三種基本算法結構iii) 循環結構算法ApYNAYNp(直到型)(當型) 循環結構示例算法N開始結束輸出該城市投票有一城市得票超過總票數一半淘汰得票最少的城市Y引例 循環結構例4 求12345。算法算法2 S1 T1; S2 I2; S3 TT I;S4 II + 1 S5 如果I不大于5,重新執行 S3、S4、S5;否則算法結束I 5NYT1輸出TI2TTIII + 1開始結束 賦值語句 偽代碼 Excel VBA例例1 1 交換兩個變量 x、y 的值p

4、xx yy pp = xx = yy = p 賦值號 x、y、p的值各是多少? 輸入輸出語句 偽代碼 Excel VBA例例2 2 輸入一個數,輸出這個數的絕對值。Read ax Abs(a)Print xa = Inputbox(“請輸入一個數)x = Abs(a)Msgbox x 其他輸入語句 條件語句單行 偽代碼 Excel VBA例例3 3 輸入三個數,輸出最大數。Read a, b, cx aIf b x Then x bIf c x Then x cPrint xa = InputBox(輸入a)b = InputBox(輸入b) c = InputBox(輸入c) x = aIf

5、 b x Then x = bIf c x Then x = cMsgBox 最大數 & x 條件語句塊 偽代碼 Excel VBA例例4 4 輸入x,計算 y = 的值。Read xIf x0 Then y x2Else y sin xEnd IfPrint yx = InputBox(輸入一個數)If x =0 Then y = x2Else y = sin(x)End IfMsgBox y0,sin, 0,2xxxx 條件語句嵌套 偽代碼 Excel VBA例例5 5 輸入x,計算 y = 的值。Read xIf x 0 Then y 1Else If x = 0 Then y

6、0Else y -1End IfPrint yx = InputBox(輸入一個數)If x 0 Then y = 1Else If x = 0 Then y = 0Else y = -1End IfMsgBox y-=0, 1, 0, 0, 0, 1xxx 循環語句For 偽代碼 Excel VBA例例6 6計算1 3 5 7 99。S 1For I From 3 To 99 Step 2 S S IEnd ForPrint SS = 1For I = 3 To 99 Step 2 S = S*INext IMsgBox S 循環語句While 偽代碼1例例7 7求最小的奇數I,使 1 3

7、5 7 I 10 000。S 1I 3 While S10 000 S S I I I 2 End WhilePrint IS 1I 1 While S10 000 I I 2 S S IEnd WhilePrint I 偽代碼2算法案例m2While Mod(m, 3)2 或 Mod(m, 5)3 或 Mod(m, 7)2 mm + 1End WhilePrint m 流程圖與偽代碼算法案例NY輸出mMod(m, 3)2mm + 1m2或Mod(m, 5)3或Mod(m, 7)2算法案例m = 2While m Mod 3 2 Or m Mod 5 3 Or m Mod 7 2 m = m

8、+ 1WendMsgBox 不定方程的一個解為 & m Excel VBA-1m = 1Do m = m + 1Loop Until m Mod 3 = 2 And m Mod 5 = 3 And m Mod 7 = 2MsgBox 不定方程的一個解為 & m Excel VBA-2例例3 3 求兩個整數a和b的最大公約數歐幾里得輾轉相除法。 問題背景與分析分析分析 求出列數:a,b,r1,r2,rn 1,rn,0 這列數從第三項開始,每項都是前兩項相除所得的余數,余數為0的前一項rn即是a和b的最大公約數這種方法稱為“歐幾里得輾轉相除法” 流程圖與偽代碼10 Read a,

9、b20 rMod(a,b)30 ab40 br50 If r 0 Then 2060 Print a70 End 輸出aabNr = 0Y輸入a,brMod(a,b)br 流程圖與偽代碼Read a, bWhile Mod(a,b)0 rMod(a,b) ab brEnd WhilePrint b 輸出babYN輸入a,brMod(a,b)brMod(a,b)0算法案例a = InputBox(輸入第一個自然數)b = InputBox(輸入第二個自然數) Do r = a Mod b a = b b = rLoop Until r = 0MsgBox 最大公約數為 & a Excel

10、 VBA-1算法案例a = InputBox(輸入第一個自然數)b = InputBox(輸入第二個自然數) While a Mod b 0 r = a Mod b a = b b = rWendMsgBox 最大公約數為 & a Excel VBA-2例例4 4 用二分法求方程x3 - x - 1 = 0在區間 1,1.5 內的一個近似解(誤差不超過0.001)。 問題背景與分析第一步第一步 確定有解區間a, b第二步第二步 取a, b的中點第三步第三步 計算函數在中點處的函數值第四步第四步 判斷中點處函數值是否為0第五步第五步 判斷新的有解區間的長度是否小于 給定的誤差 流程圖與偽

11、代碼10 Read a, b, c20 x0(a + b)/230 f(a)a3 a 1 40 f(x0)x03 x0 150 If f(x0) = 0 Then Goto 120 60 If f(a)f(x0) 0 Then70 bx080 Else90 ax0 100 End If110 If |a b|c Then Goto 20120 Print x0 N輸出x0 x0(a+b)f(x0)=0輸入a,b,cbx0f(a)f(x0)0|a b| cax0f(a)a3 - a - 1f(x0)x03 x0 1 YNYYN10 a = Val(InputBox(輸入區間左端點值)20 b =

12、 Val(InputBox(輸入區間右端點值)30 c = Val(InputBox(輸入誤差點限制)40 x0 = (a + b) / 2 50 f1 = a3 - a - 160 f2 = x03 - x0 - 170 If f2 = 0 Then Goto 14080 If f1*f2 = c Then Goto 40140 MsgBox 方程的近似解為 & x0a = Val(InputBox(輸入區間左端點值)b = Val(InputBox(輸入區間右端點值)c = Val(InputBox(輸入誤差限制)Do x0 = (a + b) / 2 f1 = a3 - a - 1 f2 = x03 - x0 - 1 If f2 = 0 Then Exit do If f1*f2 0 Then b = x0 Else a = x0 End IfLoop Until Abs(a b) cMsgBox 方程的近似解為 & x0二分法a = Val(Inpu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論