資源描述:
《算法初步ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、1.1算法與程序框圖11.1.1算法的概念2?先去括號(hào)?再乘除?后加減1、什么是算法呢?3要把大象裝冰箱,分幾步?答:分三步:第一步:打開(kāi)冰箱門(mén)第二步:把大象裝冰箱第三步:關(guān)上冰箱門(mén)問(wèn):2問(wèn)題4簡(jiǎn)單地說(shuō),算法就是解決問(wèn)題的程序或步驟。什么是算法呢?5第一步,第二步,第三步,(消元)(解一元一次方程)①+②×2,得③解③得(代入求解)將代入①,得寫(xiě)一寫(xiě)解方程組①②寫(xiě)出的步驟6寫(xiě)出解第二個(gè)方程組的算法:第一步,第二步,第三步,③解③,得④將④代入①得①×-②×得變一變①②7在數(shù)學(xué)上,通常是按照一定規(guī)則解決某一類(lèi)問(wèn)題的明確有限的步驟。算法的定義:8例1(1)設(shè)計(jì)一個(gè)算法,判斷7是否為質(zhì)數(shù);(1)第
2、一步,用2除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以2不能整除7.第二步,用3除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以3不能整除7.第三步,用4除7,得到余數(shù)3.因?yàn)橛鄶?shù)不為0,所以4不能整除7.第四步,用5除7,得到余數(shù)2.因?yàn)橛鄶?shù)不為0,所以5不能整除7.第五步,用6除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以6不能整除7.因此,7是質(zhì)數(shù).9(2)設(shè)計(jì)一個(gè)算法,判斷35是否為質(zhì)數(shù).算法:第一步,用2除35,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以2不能整除35.第二步,用3除35,得到余數(shù)2.因?yàn)橛鄶?shù)不為0,所以3不能整除35.第三步,用4除35,得到余數(shù)3.因?yàn)橛鄶?shù)不為0,所以4不能整除35.第四步,用5
3、除35,得到余數(shù)0.因?yàn)橛鄶?shù)為0,所以5能整除35.因此,35不是質(zhì)數(shù).10探究你能寫(xiě)出”判斷整數(shù)n(n>2)是否為質(zhì)數(shù)”的算法嗎?第一步,給定大于2的整數(shù)n.第二步,令i=2.第三步,用i除n,得到余數(shù)r.第四步,判斷”r=0”是否成立.若是,則n不是質(zhì)數(shù),結(jié)束算法;否則,將i的值增加1,仍用i表示.第五步,判斷”i>(n-1)”是否成立.若是,則n是質(zhì)數(shù),結(jié)束算法;否則,返回第三步.11算法的基本特點(diǎn)1、有窮性一個(gè)算法應(yīng)包括有限的操作步驟,能在執(zhí)行有窮的操作步驟之后結(jié)束。2、確定性算法的計(jì)算規(guī)則及相應(yīng)的計(jì)算步驟必須是唯一確定的,既不能含糊其詞,也不能有二義性。3、邏輯性算法中從開(kāi)始的“第
4、一步”到“最后一步”之間做到環(huán)環(huán)相扣,分工明確,“前一步”是“后一步”的前提,“后一步”是“前一步”的繼續(xù)。12算法1:第二步:計(jì)算101×50;第三步:寫(xiě)出運(yùn)算結(jié)果算法2:第一步:取n=100;第二步:計(jì)算第三步:寫(xiě)出運(yùn)算結(jié)果寫(xiě)出求1+2+3++100的一個(gè)算法(1+100)+(2+99)++(50+51);第一步:將原式變形為你會(huì)了嗎?132.任意給定一個(gè)正實(shí)數(shù),設(shè)計(jì)一個(gè)算法求以這個(gè)數(shù)為半徑的圓的面積.第一步:輸入任意一個(gè)正實(shí)數(shù)r>0;第二步:計(jì)算圓的面積:S=πr2;第三步:輸出圓的面積S.141.1.2程序框圖15程序框圖程序框圖又稱(chēng)流程圖,是一種用程序框、流程線(xiàn)及文字說(shuō)明來(lái)表示算法
5、的圖形。在程序框圖中,一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟;帶有方向箭頭的流程線(xiàn)將程序框連接起來(lái),表示算法步驟的執(zhí)行順序。16圖形符號(hào)名稱(chēng)功能終端框(起止框)表示一個(gè)算法的起始和結(jié)束輸入、輸出框表示一個(gè)算法輸入和輸出的信息處理框賦值、計(jì)算判斷框判斷某一條件是否成立,成立時(shí)在出口處標(biāo)明“是”或“Y”;不成立時(shí)標(biāo)明“否”或“N”。流程線(xiàn)連接程序框連接點(diǎn)連接程序框圖的兩部分17例用程序框圖表示“判斷整數(shù)n(n>2)是否為質(zhì)數(shù)”的算法18開(kāi)始輸入ni=2求n除以i的余數(shù)ri的值增加1仍用i表示i≥n-1或r=0?輸出“n不是質(zhì)數(shù)”結(jié)束是否是輸出“n是質(zhì)數(shù)”否r=0?設(shè)n是一個(gè)大于2的整數(shù).一般
6、用i=i+1表示.i=i+1說(shuō)明:i表示從2~(n-1)的所有正整數(shù),用以判斷例1步驟2是否終止,i是一個(gè)計(jì)數(shù)變量,有了這個(gè)變量,算法才能依次執(zhí)行.逐步考察從2~(n-1)的所有正整數(shù)中是否有n的因數(shù)存在.19畫(huà)程序框圖的規(guī)則(1)使用標(biāo)準(zhǔn)的圖形符號(hào)。(2)框圖一般按從上到下,從左到右的方向畫(huà)。(3)除判斷框外,大多數(shù)流程圖符號(hào)只有一個(gè)進(jìn)入點(diǎn)和一個(gè)退出點(diǎn)。判斷框具有超過(guò)一個(gè)退出點(diǎn)的唯一符號(hào)。(4)判斷框分兩大類(lèi),一類(lèi)判斷框“是”與“否”兩分支的判斷,而且又且僅有兩個(gè)結(jié)果;另一類(lèi)是多分支判斷,有幾種不同的結(jié)果。(5)在圖形符號(hào)內(nèi)描述的語(yǔ)言要非常簡(jiǎn)練清楚。20算法的基本邏輯結(jié)構(gòu)21開(kāi)始輸入ni=
7、2求n除以i的余數(shù)ri=i+1i≥n或r=0?n不是質(zhì)數(shù)結(jié)束是否是n是質(zhì)數(shù)否r=0?順序結(jié)構(gòu)用程序框圖來(lái)表示算法,有三種不同的基本邏輯結(jié)構(gòu):條件結(jié)構(gòu)循環(huán)結(jié)構(gòu)22三種基本結(jié)構(gòu)(表示一個(gè)良好算法的基本單元)①順序結(jié)構(gòu)②條件結(jié)構(gòu)(選擇結(jié)構(gòu))③循環(huán)結(jié)構(gòu)ABPAB成立不成立成立AP不成立AP成立不成立While(當(dāng)型)循環(huán)Until(直到型)循環(huán)23①順序結(jié)構(gòu)順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的。這是任何一個(gè)算法都離