算法初步課件_11_算法的概念_2紹老師_第1頁
算法初步課件_11_算法的概念_2紹老師_第2頁
算法初步課件_11_算法的概念_2紹老師_第3頁
算法初步課件_11_算法的概念_2紹老師_第4頁
算法初步課件_11_算法的概念_2紹老師_第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、X 二元一次方程組二元一次方程組 12 12 yx yx 的求解過程的求解過程. 歸納它的步驟歸納它的步驟: 第一步第一步: -2,得,得 5y=3 第三步第三步: 5 1 5 3 xy,得代入將 第二步第二步: 解得解得 y= 5 3 第二步第二步: 解得解得 y= 5 3 1、算法的概念:、算法的概念: 在數(shù)學中在數(shù)學中“算法算法”通常是指按照一定的規(guī)則來通常是指按照一定的規(guī)則來 解決的某一類問題的解決的某一類問題的明確和有限的步驟明確和有限的步驟,這些,這些 步驟必須是步驟必須是明確明確和和有效有效的,而且能夠在的,而且能夠在有限步有限步 之內(nèi)完成。之內(nèi)完成。 3.算法的基本思想與特征算

2、法的基本思想與特征: 2.算法的表示方法:算法的表示方法:自然語言、程序框圖、程序自然語言、程序框圖、程序 (1)解決某一類問題解決某一類問題 (2)在在有限步有限步之內(nèi)完成之內(nèi)完成 (3)每一步的明確性和有效性每一步的明確性和有效性 (4)每一步具有順序性每一步具有順序性 (一般性一般性) (有限性有限性) (確定與可行性確定與可行性) (順序性順序性) 一般書上歸納算法的基本性質(zhì)有四條: A.有窮性; B. 唯一的初始動作; C.每個動作都有唯一的后繼動作; D.動作序列終止時,表示問題得到解答 或沒有解答 練習練習 1.判斷下列關(guān)于算法的說法是否確:判斷下列關(guān)于算法的說法是否確: 1、求

3、解某一類問題的算法是唯一的;、求解某一類問題的算法是唯一的; 2、算法必須在有限步操作之后停止:、算法必須在有限步操作之后停止: 3、算法的每一步必須是明確的,不能有歧、算法的每一步必須是明確的,不能有歧 義或模糊:義或模糊: 4、算法執(zhí)行后一定產(chǎn)生確定的結(jié)果:、算法執(zhí)行后一定產(chǎn)生確定的結(jié)果: 2.下列描述不能看作算法的是: 1.做米飯需要刷鍋,淘米,添水,加熱這些 步驟; 2.洗衣機的使用說明; 3.解方程 4.利用公式 ,計算半徑為4的圓 的面積,就是計算 22 012rsxx 2 rs 2 4 練習冊: 1.題組一 例1. 2.基礎(chǔ)檢驗 1.2.3.4 3.能力提升 6 課堂小結(jié):課堂小

4、結(jié): 1.算法的基本概念和基本思想算法的基本概念和基本思想; 2. 算法的基本特征算法的基本特征. 算法初步算法初步 1.1.2程序框圖與算法的程序框圖與算法的 基本邏輯結(jié)構(gòu)基本邏輯結(jié)構(gòu) 程序框圖基本概念: 程序框圖又稱流程圖, 是一種用規(guī)定的圖形, 指向線及文字說明來 準確,直觀地表示算 法的圖形。 開始開始 輸入輸入r 輸出輸出s 結(jié)束結(jié)束 2 rs 起止框起止框 表示一個算法的開始或結(jié)束表示一個算法的開始或結(jié)束 輸入、輸出框輸入、輸出框 框內(nèi)標明輸入、輸出的內(nèi)容框內(nèi)標明輸入、輸出的內(nèi)容 處理框處理框 框內(nèi)標明所進行的處理框內(nèi)標明所進行的處理 判斷框判斷框 框內(nèi)標明條件,并在框外標明條件框

5、內(nèi)標明條件,并在框外標明條件 成立或不成立時的兩種不同流向。成立或不成立時的兩種不同流向。 流程線流程線 表示從某一框到另一框的流向表示從某一框到另一框的流向 設計算法設計算法, ,求一元二次方程求一元二次方程axax2 2+bx+c=0+bx+c=0 (a0,ba0,b2 2-4ac0-4ac0)的根)的根, ,畫出相應的流程圖畫出相應的流程圖 輸入系數(shù)輸入系數(shù)a,b,ca,b,c 輸出輸出X1X1、X2X2 結(jié)束結(jié)束 開始開始 計算計算acb4 2 計算計算 a b x 2 1 a b x 2 2 算法有三種基本邏輯結(jié)構(gòu)(課本第算法有三種基本邏輯結(jié)構(gòu)(課本第7 7頁)頁) 順序結(jié)構(gòu)、條件結(jié)

6、構(gòu)、循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。 順序結(jié)構(gòu)順序結(jié)構(gòu) 順序結(jié)構(gòu)是最簡單的算法結(jié)構(gòu),語句與順序結(jié)構(gòu)是最簡單的算法結(jié)構(gòu),語句與 語句之間,框與框之間是按語句之間,框與框之間是按從上到下的順序從上到下的順序 進行的,它是由若干個依次執(zhí)行的進行的,它是由若干個依次執(zhí)行的處理步驟處理步驟 組成的,它是任何一個算法組成的,它是任何一個算法都離不開都離不開的一種的一種 基本算法結(jié)構(gòu)?;舅惴ńY(jié)構(gòu)。 順序結(jié)構(gòu)在程序框圖中的體現(xiàn)就是用順序結(jié)構(gòu)在程序框圖中的體現(xiàn)就是用流流 程線程線將程序框?qū)⒊绦蚩蜃陨隙伦陨隙碌剡B接起來,地連接起來,按順按順 序執(zhí)行序執(zhí)行算法步驟。如在示意圖中,算法步驟。如在示意圖中

7、,A框和框和B 框是依次執(zhí)行的,只有在執(zhí)行完框是依次執(zhí)行的,只有在執(zhí)行完A框指定的框指定的 操作后,才能接著執(zhí)行操作后,才能接著執(zhí)行B框所指定的操作。框所指定的操作。 A B i=2 輸入n 示意圖示意圖 課本圖課本圖1.1-3 例、寫出圖例、寫出圖1、圖、圖2中程序框圖的運行結(jié)果:中程序框圖的運行結(jié)果: 開始開始 輸入輸入a,b a2 b4 Sa/bb/a 輸出輸出S 結(jié)束結(jié)束 (1)圖中輸出)圖中輸出S ;5/2 (2)圖中輸出)圖中輸出a 。 開始開始 輸入輸入R b a2b 輸出輸出a 結(jié)束結(jié)束 2 R 2 2 R 練習練習1:寫出下列算法的功能。:寫出下列算法的功能。 開始開始 輸入

8、輸入a,b sumab 輸出輸出sum 結(jié)束結(jié)束 右圖算法的功能右圖算法的功能 是是 。 求兩數(shù)的和求兩數(shù)的和 練習冊: v題組一 例1.2 v題組二 例1. v基礎(chǔ)檢驗 1.2.3.4. v能力提升5.6.7.8.9 條件結(jié)構(gòu)條件結(jié)構(gòu) (1)條件結(jié)構(gòu)條件結(jié)構(gòu)是指是指 在算法中通過在算法中通過對條對條 件的判斷件的判斷,根據(jù)條,根據(jù)條 件是否成立而選擇件是否成立而選擇 不同流向的算法結(jié)不同流向的算法結(jié) 構(gòu)。它的一般形式構(gòu)。它的一般形式 是:是: 條件條件 處理處理 是 否否 條件條件 處 理處 理 1 處 理處 理 2 是是否否 (2)此結(jié)構(gòu)中包含一個判)此結(jié)構(gòu)中包含一個判 斷框,根據(jù)給定的條

9、件斷框,根據(jù)給定的條件P 是否成立而選擇執(zhí)行是否成立而選擇執(zhí)行A框框 或或B框。無論框。無論P條件是否成條件是否成 立,只能執(zhí)行立,只能執(zhí)行A框或框或B框之框之 一,不可能既執(zhí)行一,不可能既執(zhí)行A框又框又 執(zhí)行執(zhí)行B框,也不可能框,也不可能A框、框、 B框都不執(zhí)行??蚨疾粓?zhí)行。 p A B Y N (4)在許多算法中,需要對問題的條件)在許多算法中,需要對問題的條件 作出邏輯判斷,判斷后依據(jù)條件是否成作出邏輯判斷,判斷后依據(jù)條件是否成 立而進行不同的處理方式,這就需要用立而進行不同的處理方式,這就需要用 條件結(jié)構(gòu)來實現(xiàn)算法。如上面的問題,條件結(jié)構(gòu)來實現(xiàn)算法。如上面的問題, 不能用順序結(jié)構(gòu)來表示

10、算法,必須用條不能用順序結(jié)構(gòu)來表示算法,必須用條 件結(jié)構(gòu)來表示。件結(jié)構(gòu)來表示。 (3)一個條件結(jié)構(gòu)可以有多個判斷框。)一個條件結(jié)構(gòu)可以有多個判斷框。 設計算法設計算法, ,求一元二次方程求一元二次方程axax2 2+bx+c=0+bx+c=0 (a0, a0, )的根)的根, ,畫出相應的流程圖畫出相應的流程圖 輸入系數(shù)輸入系數(shù)a,b,ca,b,c 輸出輸出X1X1、X2X2 結(jié)束結(jié)束 開始開始 計算計算acb4 2 計算計算 a b x 2 1 a b x 2 2 b b2 2-4ac0-4ac0 設計算法設計算法, ,求一元二求一元二 次方程次方程axax2 2+bx+c=0+bx+c=0

11、 ( )的根)的根, ,畫出畫出 相應的流程圖相應的流程圖 a0a0 輸出輸出x1,x2x1,x2 結(jié)束結(jié)束 開始開始 0? 輸入系數(shù)輸入系數(shù)a,b,ca,b,c 12 bb x,x 2a2a 否否 是是 輸出無實數(shù)解輸出無實數(shù)解 計算計算acb4 2 練習冊: v題組一 例1 v題組二 例1.2 v基礎(chǔ)檢驗 1.2.3.4 v能力提升 5.6.7.8. 程序框圖又稱流程圖,是一種用規(guī)定的圖形,指向線及程序框圖又稱流程圖,是一種用規(guī)定的圖形,指向線及 文字說明來準確、直觀地表示算法的圖形。文字說明來準確、直觀地表示算法的圖形。 程序框程序框名稱名稱功能功能 終端框(起終端框(起 止框)止框)

12、表示一個算法的起始和結(jié)束表示一個算法的起始和結(jié)束 輸入、輸出輸入、輸出 框框 表示算法的輸入和輸出的信表示算法的輸入和輸出的信 息息 處理框(執(zhí)處理框(執(zhí) 行框)行框) 賦值、計算賦值、計算 判斷框判斷框判斷一個條件是否成立,用判斷一個條件是否成立,用 “是是”、“否否”或或“Y”、 “N”標明標明 小小 結(jié)結(jié) 1. 順序結(jié)構(gòu)是任何一個算法都不可缺順序結(jié)構(gòu)是任何一個算法都不可缺 少的基本結(jié)構(gòu),它由若干個依次執(zhí)行少的基本結(jié)構(gòu),它由若干個依次執(zhí)行 的處理步驟組成。的處理步驟組成。 2.條件結(jié)構(gòu)的特點是需要根據(jù)對條件條件結(jié)構(gòu)的特點是需要根據(jù)對條件 的判斷結(jié)果來決定后面的步驟的結(jié)構(gòu)。的判斷結(jié)果來決定后

13、面的步驟的結(jié)構(gòu)。 循環(huán)結(jié)構(gòu): 結(jié)束 i = i + 1 Sum=Sum + i i100? 否 是 當當 型型 循循 環(huán)環(huán) 結(jié)結(jié) 構(gòu)構(gòu) 滿足條件滿足條件? ? 循環(huán)體循環(huán)體 Y N 當型循環(huán)結(jié)構(gòu)在每次執(zhí)行循環(huán)體前對控制當型循環(huán)結(jié)構(gòu)在每次執(zhí)行循環(huán)體前對控制 循環(huán)條件進行判斷循環(huán)條件進行判斷, ,當條件滿足時執(zhí)行循環(huán)體當條件滿足時執(zhí)行循環(huán)體, , 不滿足則停止不滿足則停止. . 2.循環(huán)結(jié)構(gòu)的算法流程圖循環(huán)結(jié)構(gòu)的算法流程圖 直直 到到 型型 循循 環(huán)環(huán) 結(jié)結(jié) 構(gòu)構(gòu) 條件條件 循環(huán)體循環(huán)體 Y N 直到型直到型循環(huán)循環(huán)執(zhí)行了一次循環(huán)體執(zhí)行了一次循環(huán)體之后之后, ,對控對控 制循環(huán)條件進行判斷制循環(huán)條

14、件進行判斷, ,當條件不滿足時執(zhí)行循當條件不滿足時執(zhí)行循 環(huán)體環(huán)體, ,滿足則停止?jié)M足則停止. . 3.循環(huán)結(jié)構(gòu)的設計步驟循環(huán)結(jié)構(gòu)的設計步驟 (1)(1)確定循環(huán)結(jié)構(gòu)的循環(huán)變量和初始條件確定循環(huán)結(jié)構(gòu)的循環(huán)變量和初始條件; ; (2)(2)確定算法中需要反復執(zhí)行的部分確定算法中需要反復執(zhí)行的部分, ,即循環(huán)體;即循環(huán)體; (3)(3)確定循環(huán)的終止條件確定循環(huán)的終止條件. . 4.循環(huán)結(jié)構(gòu)的三要素循環(huán)結(jié)構(gòu)的三要素 循環(huán)變量,循環(huán)體、循環(huán)的終止條件循環(huán)變量,循環(huán)體、循環(huán)的終止條件. . 當型循環(huán)當型循環(huán) 與直到循與直到循 環(huán)的區(qū)別:環(huán)的區(qū)別: 當型循環(huán)可以不執(zhí)行循環(huán)體,直到循環(huán)至少執(zhí)當型循環(huán)可以不

15、執(zhí)行循環(huán)體,直到循環(huán)至少執(zhí) 行一次循環(huán)體行一次循環(huán)體. 當型循環(huán)先判斷后執(zhí)行,直到型循環(huán)先執(zhí)行后當型循環(huán)先判斷后執(zhí)行,直到型循環(huán)先執(zhí)行后 判斷判斷. 對同一算法來說,當型循環(huán)和直到循環(huán)的條件對同一算法來說,當型循環(huán)和直到循環(huán)的條件 互為反條件互為反條件. (1)循環(huán)結(jié)構(gòu)不是永無終止的)循環(huán)結(jié)構(gòu)不是永無終止的“死循環(huán)死循環(huán)”, 一定要在某個條件下終止循環(huán),這就需要用條一定要在某個條件下終止循環(huán),這就需要用條 件結(jié)構(gòu)來判斷。因此,件結(jié)構(gòu)來判斷。因此,循環(huán)結(jié)構(gòu)中一定包含條循環(huán)結(jié)構(gòu)中一定包含條 件結(jié)構(gòu)。件結(jié)構(gòu)。 (2)循環(huán)結(jié)構(gòu)在程序框圖中也是利用)循環(huán)結(jié)構(gòu)在程序框圖中也是利用判斷框判斷框 來表示,判斷

16、框內(nèi)寫上條件,兩個出口分別來表示,判斷框內(nèi)寫上條件,兩個出口分別 對應著條件成立和條件不成立時執(zhí)行的不同對應著條件成立和條件不成立時執(zhí)行的不同 指令,其中一個指向循環(huán)體,然后再從循環(huán)指令,其中一個指向循環(huán)體,然后再從循環(huán) 體回到判斷框的入口處。體回到判斷框的入口處。 (3)在循環(huán)結(jié)構(gòu)中都有一個)在循環(huán)結(jié)構(gòu)中都有一個計數(shù)變量計數(shù)變量或或累加累加 變量變量。計數(shù)變量用于記錄循環(huán)次數(shù),累加變量。計數(shù)變量用于記錄循環(huán)次數(shù),累加變量 用于輸出結(jié)果。計數(shù)變量和累加變量一般是同用于輸出結(jié)果。計數(shù)變量和累加變量一般是同 步執(zhí)行的,累加一次,計數(shù)一次。步執(zhí)行的,累加一次,計數(shù)一次。 例例1、設計一個計算、設計一

17、個計算123100的值的的值的 算法,并畫出程序框圖。算法,并畫出程序框圖。 算法如下:算法如下: 第一步:第一步:i1; 第二步:第二步:sum0; 第三步:第三步:sumsumi; 第四步:第四步:ii1; 第五步:如果第五步:如果i不大于不大于100,返回重新執(zhí)行第三,返回重新執(zhí)行第三 步,第四步,第五步,否則,算法結(jié)束,最后步,第四步,第五步,否則,算法結(jié)束,最后 得到的得到的sum值就是值就是123100的值。的值。 例例1、設計一個計算、設計一個計算1 23100的值的值 的算法,并畫出程序的算法,并畫出程序 框圖??驁D。 例例1.設計一個計設計一個計 算算1+2+3+100 的的

18、程序框圖程序框圖. 開始開始 i100? 否否 是是 輸出輸出s 結(jié)束結(jié)束 i=1 S=0 i=i+1 S=S+i 解:由于加數(shù)解:由于加數(shù) 較多,采用逐較多,采用逐 個相加的方法個相加的方法 程序太長,是程序太長,是 不可取的,因不可取的,因 此應采取引入此應采取引入 變量應用循環(huán)變量應用循環(huán) 的辦法。的辦法。 例例1.設計設計 一個計算一個計算 1+2+3+ +100的程的程 序框圖序框圖. 開始開始 i 100? 否否 是是 輸出輸出S 結(jié)結(jié)束束 i=1 S=0 S=S+i i=i+1 最后的結(jié)果 結(jié)束 i = i + 1 Sum=Sum + i i100? 否 是 步驟A 步驟B 思考

19、思考:將步驟將步驟A和步驟和步驟B交交 換位置,結(jié)果會怎樣?能達到換位置,結(jié)果會怎樣?能達到 預期結(jié)果嗎?為什么?預期結(jié)果嗎?為什么? 答:達不到預達不到預 期結(jié)果;當期結(jié)果;當i = 100時,退出循時,退出循 環(huán),環(huán),i的值未能加的值未能加 入到入到Sum中中. 結(jié)束 i = i + 1 Sum=Sum + i i7? 開始 x1 I2 xxI II1 輸出x 結(jié)束 左圖輸出的x =_ 12367 課堂練習課堂練習 1.畫出求畫出求T=123100問題的問題的程序框圖程序框圖. 第一步第一步: :設設i=1,Ti=1,T =1;=1; 第二步第二步: :如果如果i100i100執(zhí)行第三步執(zhí)

20、行第三步, ,否則執(zhí)行第五步否則執(zhí)行第五步; ; 第三步第三步: :計算計算T Ti i并將結(jié)果代替并將結(jié)果代替T;T; 第四步第四步: :將將i+1i+1代替代替i,i,轉(zhuǎn)去執(zhí)行第二步轉(zhuǎn)去執(zhí)行第二步; ; 第五步第五步: :輸出輸出T.T. 課堂練習課堂練習 開始開始 i 100? 否否 是是 輸出輸出T 結(jié)束結(jié)束 i=1 T=1 i=i+1 T=Ti 開始開始 i100? 否否 是是 輸出輸出S 結(jié)束結(jié)束 i=1 S=0 i=i+1 S=S+i2 書本書本P.21A2 2.設計一個計算設計一個計算 12+22+32+1002 的一個的一個程序框圖程序框圖. 練習冊: v題組一 例1 v題組

21、二 例2 v基礎(chǔ)檢驗 2.3 v能力提升 4.6.7.8 1本節(jié)課主要講述了算法的循環(huán)結(jié)構(gòu)。算本節(jié)課主要講述了算法的循環(huán)結(jié)構(gòu)。算 法的基本邏輯結(jié)構(gòu)有三種,即順序結(jié)構(gòu)、條法的基本邏輯結(jié)構(gòu)有三種,即順序結(jié)構(gòu)、條 件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。其中順序結(jié)構(gòu)是最簡單件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。其中順序結(jié)構(gòu)是最簡單 的結(jié)構(gòu),也是最基本的結(jié)構(gòu),循環(huán)結(jié)構(gòu)必然的結(jié)構(gòu),也是最基本的結(jié)構(gòu),循環(huán)結(jié)構(gòu)必然 包含條件結(jié)構(gòu),所以這三種基本邏輯結(jié)構(gòu)是包含條件結(jié)構(gòu),所以這三種基本邏輯結(jié)構(gòu)是 相互支撐的,它們共同構(gòu)成了算法的基本結(jié)相互支撐的,它們共同構(gòu)成了算法的基本結(jié) 構(gòu),無論怎樣復雜的邏輯結(jié)構(gòu),都可以通過構(gòu),無論怎樣復雜的邏輯結(jié)構(gòu),都可以通過 這

22、三種結(jié)構(gòu)來表達這三種結(jié)構(gòu)來表達 。 2循環(huán)結(jié)構(gòu)要在某個條件下終止循環(huán),這循環(huán)結(jié)構(gòu)要在某個條件下終止循環(huán),這 就需要條件結(jié)構(gòu)來判斷。因此,循環(huán)結(jié)構(gòu)中就需要條件結(jié)構(gòu)來判斷。因此,循環(huán)結(jié)構(gòu)中 一定包含條件結(jié)構(gòu),但不允許一定包含條件結(jié)構(gòu),但不允許“死循環(huán)死循環(huán)”。 課堂小結(jié) 3在循環(huán)結(jié)構(gòu)中都有一個計數(shù)變量和累加在循環(huán)結(jié)構(gòu)中都有一個計數(shù)變量和累加 變量。計數(shù)變量用于記錄循環(huán)次數(shù),累加變變量。計數(shù)變量用于記錄循環(huán)次數(shù),累加變 量用于輸出結(jié)果。計數(shù)變量和累加變量一般量用于輸出結(jié)果。計數(shù)變量和累加變量一般 是同步執(zhí)行的,累加一次,計數(shù)一次。是同步執(zhí)行的,累加一次,計數(shù)一次。 4畫循環(huán)結(jié)構(gòu)程序框圖前:確定循環(huán)變

23、畫循環(huán)結(jié)構(gòu)程序框圖前:確定循環(huán)變 量和初始條件;確定算法中反復執(zhí)行的部量和初始條件;確定算法中反復執(zhí)行的部 分,即循環(huán)體;確定循環(huán)的轉(zhuǎn)向位置;分,即循環(huán)體;確定循環(huán)的轉(zhuǎn)向位置; 確定循環(huán)的終止條件確定循環(huán)的終止條件. 1.2.1算法基本語句 算法初步算法初步 溫故而知新溫故而知新 1. 什么是算法?什么是程序框圖?什么是算法?什么是程序框圖? 2. 算法的基本邏輯結(jié)構(gòu)有哪些?算法的基本邏輯結(jié)構(gòu)有哪些? 算法通常指可以用計算機來解決的某一類問題算法通常指可以用計算機來解決的某一類問題 的程序或步驟,這些程序或步驟必須是明確的和有的程序或步驟,這些程序或步驟必須是明確的和有 效的,而且能夠在有限步

24、之內(nèi)完成。效的,而且能夠在有限步之內(nèi)完成。 程序框圖是一中用規(guī)定的圖形、指向線及文字程序框圖是一中用規(guī)定的圖形、指向線及文字 說明來準確、直觀的表示算法的圖形。說明來準確、直觀的表示算法的圖形。 算法的基本結(jié)構(gòu)有三種:順序結(jié)構(gòu)、條件結(jié)構(gòu)、算法的基本結(jié)構(gòu)有三種:順序結(jié)構(gòu)、條件結(jié)構(gòu)、 循環(huán)結(jié)構(gòu),其中循環(huán)結(jié)構(gòu)又分為當型結(jié)構(gòu)和直到型循環(huán)結(jié)構(gòu),其中循環(huán)結(jié)構(gòu)又分為當型結(jié)構(gòu)和直到型 結(jié)構(gòu)兩種。結(jié)構(gòu)兩種。 1. 1. 計算機能夠計算機能夠 理解理解 的語言與人的語言有什么區(qū)別?的語言與人的語言有什么區(qū)別? 計算機不同于人:人有大腦,可以思考問題,而計計算機不同于人:人有大腦,可以思考問題,而計 算機則不能算機

25、則不能. .用自然語言和程序框圖描述的算法,計算用自然語言和程序框圖描述的算法,計算 機無法識別,必須轉(zhuǎn)化為其能理解的語言,即程序語言。機無法識別,必須轉(zhuǎn)化為其能理解的語言,即程序語言。 2 2、基本的算法語句有哪些?各自對應怎樣的算法結(jié)構(gòu)?、基本的算法語句有哪些?各自對應怎樣的算法結(jié)構(gòu)? 基本的算法語句有:輸入語句、輸出語句、賦基本的算法語句有:輸入語句、輸出語句、賦 值語句、條件語句、循環(huán)語句;值語句、條件語句、循環(huán)語句;輸入語句、輸出語輸入語句、輸出語 句、賦值語句基本上是對應順序結(jié)構(gòu),條件語句對句、賦值語句基本上是對應順序結(jié)構(gòu),條件語句對 應條件結(jié)構(gòu)、循環(huán)語句對應循環(huán)結(jié)構(gòu)。應條件結(jié)構(gòu)、

26、循環(huán)語句對應循環(huán)結(jié)構(gòu)。 例例1 :用描點法作函數(shù):用描點法作函數(shù) y=x3+3x2-24x+30的圖象時,需的圖象時,需 要求出自變量和函數(shù)的一組對應值,編寫程序,分別計要求出自變量和函數(shù)的一組對應值,編寫程序,分別計 算當經(jīng)算當經(jīng)=-5,-4,-3,-2,-1,0,1,2,3,4,5時的函時的函 數(shù)值。數(shù)值。 算法:算法: S1:輸入一個自變量:輸入一個自變量X 值值 S2:計算:計算y=x3+3x2-24x+30 S3:輸出:輸出y 開始開始 輸入輸入X y=x3+3x2-24x+30 輸出輸出y 結(jié)束結(jié)束 程序框圖:程序框圖: 計算機程序:計算機程序: Input “x=“;x y=x3

27、+3*x2-24*x+30 Print y end Input “x=“;x y=x3+3*x2-24*x+30 Print y end 輸入語句輸入語句 輸出語句輸出語句 1、輸入語句:、輸入語句: 一般格式:一般格式: INPUT “提示信息提示信息“;變量;變量 程序框圖程序框圖 輸入變量的值 例:例:INPUT “a,b,c=“;a,b,c 2、輸出語句:、輸出語句: 一般格式:一般格式: PRINT “提示內(nèi)容提示內(nèi)容” ; 表達表達 式式 輸出表達式的值 例:例:PRINT “S=“ ; S 賦值語句賦值語句 例例2 2 編寫程序,計算一個學生語文、數(shù)學、英語三編寫程序,計算一個學

28、生語文、數(shù)學、英語三 門課程的總成績和平均成績,并輸出。門課程的總成績和平均成績,并輸出。 開始開始 輸入輸入數(shù)學數(shù)學a a 輸入輸入語文語文b b 輸入英語輸入英語c c 總分總分s=a+b+cs=a+b+c 平均平均p=s/3p=s/3 輸出總分輸出總分s s 輸出平均分輸出平均分p p 結(jié)束結(jié)束 程序: INPUT “數(shù)學數(shù)學=”;a INPUT “語文語文=”;b INPUT “英語英語=”;c S=a+b+c P=(a+b+c)/3 PRINT “總分總分=”;s PRINT “平均分平均分=”;p END 程序框圖:程序框圖: INPUT “數(shù)學數(shù)學,語文語文,英語英語”;a,b,

29、c PRINT “總分總分=”;a+b+c PRINT “平均分平均分=”;(a+b+c)/3 END 3、賦值語句:、賦值語句: 一般格式:一般格式: 變量變量=表達式表達式 程序框圖程序框圖 變量變量=表達式表達式 說明:計算機執(zhí)行賦值語句時,先計算說明:計算機執(zhí)行賦值語句時,先計算”=“右右 邊的表達式的值,然后把這個值賦給邊的表達式的值,然后把這個值賦給”=“左邊左邊 的變量。的變量。 例:例:S=S+i A=A+1 判斷判斷:1. x=7+9 2. 7+9=x 3. x=x/3 4. a+b=c 5. c=a+b 6. a=b=5 7. a=5 a=7 a=9 例例3 給一個變量重復

30、賦值。給一個變量重復賦值。 程序:程序: A = 10 A = A + 15 PRINT A END 例例4 交換兩個變量交換兩個變量A和和B的值,并輸出交換前后的值。的值,并輸出交換前后的值。 程序:程序: INPUT A INPUT B PRINT A,B X=A A=B B=X PRINT A,B END 已知華氏溫度和攝氏溫度的轉(zhuǎn)換公式是:已知華氏溫度和攝氏溫度的轉(zhuǎn)換公式是: (華氏溫度(華氏溫度32)59=攝氏溫度。攝氏溫度。 程序框圖:程序框圖: 開始開始 輸入華氏溫度輸入華氏溫度F C=(F32) 5/9 輸出輸出 C 結(jié)束結(jié)束 程序:程序: INPUT “F=”;F C=(F3

31、2)* 5/9 PRINT “C=”;C END 書書P26練習練習1: 書書P26練習練習2: 開始開始 輸入非零數(shù)輸入非零數(shù) a,b x1=a+b 輸出輸出x1,x2,x3,x4 結(jié)束結(jié)束 x2=a*b x4=a/b x3=a-b 程序:程序: INPUT ”輸入兩個非零實數(shù)輸入兩個非零實數(shù)a,b” ; a , b x1=a+b x2=a*b x3=a-b x4=a/b PRINT x1,x2,x3,x4 END 若三角形的三邊分別是若三角形的三邊分別是a,b,c,借助三角型面積公式,借助三角型面積公式 (海倫(海倫-秦九韶公式)秦九韶公式) )()()(,() 2 abc Sp papb

32、pcp 編寫一個求三角形面積的程序。編寫一個求三角形面積的程序。 程序:程序: INPUT “a,b,c=”;a,b,cINPUT “a,b,c=”;a,b,c p=(a+b+c)/2p=(a+b+c)/2 S=SQR(pS=SQR(p* *(p-a)(p-a)* *(p-b)(p-b)* *(p-c)(p-c) PRINT “PRINT “三角形面積三角形面積S=”;SS=”;S ENDEND 練習練習3 程序框圖:程序框圖: 開始開始 2 abc p ()()()sp p a p b p c 輸出輸出s 結(jié)束結(jié)束 書書P26練習練習4: INPUT “請輸入水果糖重量請輸入水果糖重量a=”

33、 ; a INPUT “請輸入奶糖重量請輸入奶糖重量b=” ; b INPUT “請輸入果仁巧克力重量請輸入果仁巧克力重量c=” ; c M=a*10.4+b*15.6+c*25.2 PRINT “您應付您應付(元元):” ; M END 小結(jié)小結(jié) 1、輸入語句、輸出語句和賦值語句的功能與、輸入語句、輸出語句和賦值語句的功能與 表示方法表示方法 2、能夠設計程序,并準確運用輸入語句、輸出、能夠設計程序,并準確運用輸入語句、輸出 語句和賦值語句語句和賦值語句 練習練習 1、編寫一個程序,要求輸入兩個正數(shù)編寫一個程序,要求輸入兩個正數(shù)a和和b的值,的值, 輸出輸出ab和和ba的值,并畫出程序框圖。

34、的值,并畫出程序框圖。 程序:程序: LNPUT a, b M=ab N=ba PRINT M,N END 開始 輸入a,b M=ab N=ba 輸出M,N 結(jié)束 語句語句一般格式一般格式主要功能主要功能說明說明 輸入語句輸入語句 輸出語句輸出語句 賦值語句賦值語句 INPUT “提示內(nèi)容提示內(nèi)容”;變量變量 PRINT “提示內(nèi)容提示內(nèi)容”;表達式表達式 變量表達式變量表達式 可對程序中可對程序中 的變量賦值的變量賦值 可輸出表達式可輸出表達式 的值,計算的值,計算 可對程序中可對程序中 的變量賦值,的變量賦值, 計算計算 (1)提示內(nèi)容和它后面)提示內(nèi)容和它后面 的的“;”可以省略可以省略

35、 (2)一個語句可以給)一個語句可以給多個變多個變 量賦值量賦值,中間用,中間用“,”分隔分隔 (3)無計算功能無計算功能 (1)表達式可以是變量,)表達式可以是變量, 計算公式,或系統(tǒng)信息計算公式,或系統(tǒng)信息 (2)一個語句可以輸入多)一個語句可以輸入多 個表達式,中間用個表達式,中間用“,”分隔分隔 (3)有計算功能有計算功能 (1)“=”的的右側(cè)右側(cè)必須是表達必須是表達 式,式,左側(cè)左側(cè)必須是變量必須是變量 (2)一個語句只能給一個)一個語句只能給一個 變量賦變量賦 (3)有計算功能有計算功能 數(shù)學符號和程序符號對比 數(shù)學符號 程序符號 |x| 且 或 b a x 練習冊: 題組一 例1

36、.2 題組二 例1 基礎(chǔ)檢驗 1.2.3.4.5 能力提升6.7.8.9.10.11.12 1.2.2 算法基本語句條件語句 算法初步 復習鞏固 1、輸入語句、輸出語句和賦值語句對應于算法中的哪種結(jié)構(gòu)?這 三種語句的一般格式是什么? 2、什么是條件結(jié)構(gòu)?用程序框圖表示這種結(jié)構(gòu) 順序結(jié)構(gòu)輸入語句 輸出語句 賦值語句 INPUT “提示文字”;變量 PRINT “提示內(nèi)容”;表達式 變量表達式 滿足條件? 語句1語句2 是 否 滿足條件? 語句 是 否 新課講解 問:條件結(jié)構(gòu)用怎樣的程序語句來描述?這種語句的一般格式是怎樣的? IF 條件條件 THEN 語句語句1 ELSE 語句語句2 END I

37、F IF 條件條件 THEN 語句語句 END IF 或 滿足條件? 語句1語句2 是 否 滿足條件? 語句 是 否 例例1 編寫一個程序,求任意實數(shù)的絕對值。編寫一個程序,求任意實數(shù)的絕對值。 INPUT “x=”;x IF x0 THEN y=-x ELSE y=x END IF PRINT “x=”;y END 程序如下:程序如下: 程序框圖:程序框圖: 開始開始 輸入輸入 x y=-xy=x 輸出輸出 y 結(jié)束結(jié)束 x0? 是是否否 2.編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵盤上編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵盤上 輸入一個整數(shù),輸出該數(shù)的奇偶性。輸入一個整數(shù),輸出該數(shù)的奇偶性。

38、 INPUT “x=”;x y= x MOD 2 IF y=0 THEN PRINT x ; “is an even number” ELSE PRINT x ; “is an odd number” END IF END 程序: 小結(jié) 1、條件結(jié)構(gòu)的程序表示 2、注意書寫的規(guī)范性 IF 條件條件 THEN 語句語句1 ELSE 語句語句2 END IF IF 條件條件 THEN 語句語句 END IF 滿足條件? 語句1語句2 是 否 滿足條件? 語句 是 否 練練 習習 練練 習習 A x=5 y=20 IF x0 THEN x=y-3 ELSE y=y+3 END IF PRINT xy

39、 ; yx END 練練 習習 x=5 y=20 IF x0 THEN x=y-3 ELSE y=y+3 END IF PRINT xy ; yx END 練練 習習 22,-22 練練 習習 練練 習習 D 練習冊: v題組一 例1、2 v題組一 例1 v基礎(chǔ)檢驗1.2.3.4 v能力提升5.6.7. 1.2.3 循環(huán)語句循環(huán)語句 復習復習 1.順序結(jié)構(gòu)常用的程序語言和格式順序結(jié)構(gòu)常用的程序語言和格式 輸入語句輸入語句 INPUT “提示內(nèi)容提示內(nèi)容”;變量;變量 輸出語句輸出語句 PRINT “提示內(nèi)容提示內(nèi)容”;表達式;表達式 賦值語句賦值語句 變量變量=表達式表達式 IF 條件條件 T

40、HEN 語句語句 END IF 2.條件語句的一般格式:條件語句的一般格式: 程序框圖: 復習復習 IF 條件條件 THEN 語句語句 1 ELSE 語句語句 2 EDN IF 1.2.3 循環(huán)語句循環(huán)語句 算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實現(xiàn)的算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實現(xiàn)的.對應于對應于 程序框圖中的兩種循環(huán)結(jié)構(gòu),一般程序設計語言中也程序框圖中的兩種循環(huán)結(jié)構(gòu),一般程序設計語言中也 有當型有當型(WHILE型型)和直到型和直到型(UNTIL型型)兩種語句結(jié)構(gòu)。兩種語句結(jié)構(gòu)。 即即WHILE語句和語句和UNTIL語句。語句。 (1)WHLE語句的一般格式是:語句的一般格式是: 否否 循環(huán)體循

41、環(huán)體 滿足條件?滿足條件? 是是 WHILE 條件條件 循環(huán)體循環(huán)體 WEND 例例1:編寫計算機程序來計算編寫計算機程序來計算1+2+3+100 的值。的值。 s=0 i=1 WHILE i100 PRINT s END i=1 開始開始 結(jié)束結(jié)束 s=0 輸出輸出s i=i+1 s=s+i i100? 否否 是是 程序框圖:程序框圖:程序:程序: 探究交流:探究交流: 編寫一個程序,輸入正整數(shù)編寫一個程序,輸入正整數(shù)n,計算它的階乘,計算它的階乘n! (n!=n(n-1) 321) INPUT “n=”;n WHILE in i=i+1 END m=1 i=1 PRINT “m=”;m U

42、NTIL型:型: 小小 結(jié)結(jié) WHILE 條件條件 循環(huán)體循環(huán)體 WEND DO 循環(huán)體循環(huán)體 LOOP UNTIL 條件條件 兩種循環(huán)語句:兩種循環(huán)語句: 循環(huán)體循環(huán)體 滿足條件?滿足條件? 是是 否否 (1) While(當型)循(當型)循 環(huán)環(huán) (2)Until(直到型)循環(huán)(直到型)循環(huán) 循環(huán)體循環(huán)體 滿足條件?滿足條件? 是是 否否 練習冊: v題組一 例1 v基礎(chǔ)檢驗 1.2.3.4 v能力提升5.6.7 1.3.1算法案例(第一課時) 1. 1.求兩個正整數(shù)的最大公約數(shù)求兩個正整數(shù)的最大公約數(shù). . (1 1)求)求2525和和3535的最大公約數(shù);的最大公約數(shù); (2 2)求)

43、求1818和和3 30 0的最大公約數(shù)的最大公約數(shù). . 2.2.求求82518251和和61056105的最大公約數(shù)的最大公約數(shù). . 25(1) 5 5 35 7 所以,所以,2525和和3535的最大的最大 公約數(shù)為公約數(shù)為5 5, 所以,所以,1818和和3 30 0的最大的最大 公約數(shù)為公約數(shù)為2 23=63=6. . 18(2) 2 9 30 153 35 第一步第一步 用兩數(shù)中較大的數(shù)除以較小的數(shù),求用兩數(shù)中較大的數(shù)除以較小的數(shù),求 得商和余數(shù)得商和余數(shù) 8251=6105 8251=61051+21461+2146。 結(jié)論:結(jié)論: 8251 8251和和61056105的公約數(shù)

44、就是的公約數(shù)就是61056105和和21462146 的公約數(shù),求的公約數(shù),求82518251和和61056105的最大公約數(shù),只要求的最大公約數(shù),只要求 出出61056105和和21462146的公約數(shù)就可以了。的公約數(shù)就可以了。 第二步第二步 對對61056105和和21462146重復第一步的做法,重復第一步的做法, 6105=21466105=21462+18132+1813。 同理同理61056105和和21462146的最大公約數(shù)也是的最大公約數(shù)也是21462146和和 18131813的最大公約數(shù)。的最大公約數(shù)。 2.2.求求82518251和和61056105的最大公約數(shù)的最大

45、公約數(shù). . 完整的過程完整的過程 8251=61051+2146 6105=21462+1813 2146=18131+333 1813=3335+148 333=1482+37 148=374+0 顯然顯然37是是148和和37 的最大公約數(shù),也就的最大公約數(shù),也就 是是8251和和6105的最的最 大公約數(shù)。大公約數(shù)。 輾轉(zhuǎn)相除法(歐幾里得算法)輾轉(zhuǎn)相除法(歐幾里得算法) n個人簡介 歐幾里德(Euclid of Alexandria),生活在亞歷山大 城的歐幾里得(約前330約前275)是古希臘最 享有盛名的數(shù)學家。以其所著的幾何原本(簡 稱原本)聞名于世。 歐幾里德 輾轉(zhuǎn)相除法輾轉(zhuǎn)相

46、除法 又叫又叫歐幾里德算法,歐幾里德算法, 是由歐幾里德在公元前是由歐幾里德在公元前300300年左右年左右 首先提出的,是一種古老而有效首先提出的,是一種古老而有效 的算法。的算法。 例例2 2 用輾轉(zhuǎn)相除法求用輾轉(zhuǎn)相除法求225225和和135135的最大公約數(shù)的最大公約數(shù) 225=1351+90 135=901+45 90=452 顯然顯然4545是是9090和和4545的最大公約數(shù),也就是的最大公約數(shù),也就是225225和和 135135的最大公約數(shù)的最大公約數(shù) 思考思考1 1:從上面的兩個例子可以看出計算的:從上面的兩個例子可以看出計算的 規(guī)律是什么?規(guī)律是什么? S S1 1:用第

47、一個數(shù)除以第二個數(shù):用第一個數(shù)除以第二個數(shù)。 S S2 2:除數(shù)變成被除數(shù),余數(shù)變成除數(shù):除數(shù)變成被除數(shù),余數(shù)變成除數(shù) S S3 3:重復:重復S S1 1,直到余數(shù)為,直到余數(shù)為0 0。 輾轉(zhuǎn)相除法是一個反復執(zhí)行直到余數(shù)等于輾轉(zhuǎn)相除法是一個反復執(zhí)行直到余數(shù)等于0 0停止停止 的步驟,這實際上是一個循環(huán)結(jié)構(gòu)的步驟,這實際上是一個循環(huán)結(jié)構(gòu). . 8251=61051+2146 6105=21462+1813 2146=18131+333 1813=3335+148 333=1482+37 148=374+0 m = n q r 用程序框圖表示出右邊的過程用程序框圖表示出右邊的過程 r=m MOD n m = n n = r r=0? 是 否 第一步第一步,給定兩個正整數(shù),給定兩個正整數(shù)m m、n n 請根據(jù)算法步驟和程序框圖請根據(jù)算法步驟和程序框圖

溫馨提示

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

評論

0/150

提交評論