算法的概念6課件_第1頁
算法的概念6課件_第2頁
算法的概念6課件_第3頁
算法的概念6課件_第4頁
算法的概念6課件_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1.1.1算法的概念一人帶著一只狼、一只羊和一箱蔬菜要過河,但只有一條小船.乘船時(shí),每次只能帶狼、羊和蔬菜中的一種.當(dāng)有人在場時(shí),狼、羊、蔬菜都相安無事.一旦人不在,狼會吃羊,羊會吃菜.請?jiān)O(shè)計(jì)一個(gè)方案,安全地將狼、羊和蔬菜帶過河.過河游戲新課引入:請看以下趣味游戲如何發(fā)電子郵件?

一般地,對于一類問題的機(jī)械式地、統(tǒng)一地、按部就班地求解過程稱為算法(algorithm)它是解決某一問題的程序或步驟.

所謂“算法”就是解題方法的精確描述.從更廣義的角度來看,并不是只有“計(jì)算”的問題才有算法,日常生活中處處都有.如樂譜是樂隊(duì)演奏的算法,菜譜是做菜肴的算法,珠算口訣是使用算盤的算法,等.

請你寫出解下面二元一次方程組的詳細(xì)過程.①②第二步,解③得第三步,②-①×2得5y=3;④第四步,解④得

第五步,得到方程組的解為第一步,①+②×2得5x=1;③解:做一做你能寫出解一般的二元一次方程組的步驟嗎?

第一步,第二步,解(3)得

思考

第四步,解(4)得

第三步,

第五步,得到方程組的解為

練習(xí)1.給出求1+2+3+4+5+6的一個(gè)算法.解法1.按照逐一相加的程序進(jìn)行.第一步:計(jì)算1+2,得3;第二步:將第一步中的運(yùn)算結(jié)果3與3相加得6;第三步:將第二步中的運(yùn)算結(jié)果6與4相加得10;第四步:將第三步中的運(yùn)算結(jié)果10與5相加得15;第五步:將第四步中的運(yùn)算結(jié)果15與6相加得21.解法2.可以運(yùn)用下面公式直接計(jì)算.第一步,取n=6;第二步,計(jì)算;第三步,輸出計(jì)算結(jié)果.點(diǎn)評:解法1繁瑣,步驟較多;解法2簡單,步驟較少.找出好的算法是我們的追求目標(biāo).3.算法的基本特征:明確性:算法對每一個(gè)步驟都有確切的、非二義性的規(guī)定,即每一步對于利用算法解決問題的人或計(jì)算機(jī)來說都是可讀的、可執(zhí)行的,而不需要計(jì)算者臨時(shí)動(dòng)腦筋.有效性:算法的每一個(gè)步驟都能夠通過基本運(yùn)算有效地進(jìn)行,并得到確定的結(jié)果;對于相同的輸入,無論誰執(zhí)行算法,都能夠得到相同的最終結(jié)果.講授新課有限性:算法應(yīng)由有限步組成,至少對某些輸入,算法應(yīng)在有限多步內(nèi)結(jié)束,并給出計(jì)算結(jié)果.信息輸出:一個(gè)算法至少要有一個(gè)有效的信息輸出,這就是問題求解的結(jié)果.不唯一性:求解某一個(gè)題的解法不一定是唯一的,對于一個(gè)問題可以有不同的算法.4.算法的描述:

描述算法可以有不同的方式,常用的有自然語言、程序框圖、程序設(shè)計(jì)語言、偽代碼等.數(shù)據(jù)輸入:算法一定要根據(jù)輸入的初始數(shù)據(jù)或給定的初值才能正確執(zhí)行它的每一步驟.

自然語言就是人們?nèi)粘J褂玫恼Z言,可以是漢語、英語或數(shù)學(xué)語言等.用自然語言描述算法的優(yōu)點(diǎn)是通俗易懂,當(dāng)算法中的操作步驟都是順序執(zhí)行時(shí)比較容易理解.缺點(diǎn)是如果算法中包含判斷和轉(zhuǎn)向,并且操作步驟較多時(shí),就不那么直觀清晰了.(1)自然語言(2)程序框圖(3)程序設(shè)計(jì)語言1.1.2程序框圖中講解1.2基本算法語句中講解例1.(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除35,得到余數(shù)0.因?yàn)橛鄶?shù)為0,所以5能整除35.因此,35不是質(zhì)數(shù).變式1:寫出“判斷53是否質(zhì)數(shù)”的算法②算法要“面面俱到”,不能省略任何一個(gè)細(xì)小的步驟,只有這樣,才能在人設(shè)計(jì)出算法后,把具體的執(zhí)行過程交給計(jì)算機(jī)完成.①設(shè)計(jì)一個(gè)具體問題的算法時(shí),與過去熟悉地解數(shù)學(xué)題的過程有直接的聯(lián)系,但這個(gè)過程必須被分解成若干個(gè)明確的步驟,而且這些步驟必須是有效的.注意:變式2:任意給定一個(gè)大于1的整數(shù)n,試設(shè)計(jì)一個(gè)程序或步驟對n是否為質(zhì)數(shù)做出判定.分析:回顧這個(gè)問題的解題過程.算法步驟:第一步:判斷n是否等于2.若n=2,則n是質(zhì)數(shù);若n>2,則執(zhí)行第二步.第二步:依次檢驗(yàn)2~(n-1)這些整數(shù)是不是n的約數(shù),即是不是整除n的數(shù).若有這樣的數(shù),則n不是質(zhì)數(shù);若沒有這樣的數(shù),則n是質(zhì)數(shù).二分法

對于區(qū)間[a,b]上連續(xù)不斷、且f(a)f(b)<0的函數(shù)y=f(x),通過不斷地把函數(shù)f(x)的零點(diǎn)所在的區(qū)間一分為二,使區(qū)間的兩個(gè)端點(diǎn)逐步逼近零點(diǎn),進(jìn)而得到零點(diǎn)或其近似值的方法叫做二分法.第四步,若f(a)·f(m)<0,則含零點(diǎn)的區(qū)間為[a,m];第二步,給定區(qū)間[a,b],滿足f(a)·f(b)<0.第三步,取中間點(diǎn).第五步,判斷f(m)是否等于0或者[a,b]的長度是否小于d,若是,則m是方程的近似解;否則,返回第三步.將新得到的含零點(diǎn)的仍然記為[a,b].否則,含零點(diǎn)的區(qū)間為[m,b].算法步驟:第一步,令,給定精確度d.ab|a-b|12111.50.51.251.50.251.3751.50.1251.3751.43750.06251.406251.43750.031251.406251.4218750.0156251.4146251.4218750.00781251.41406251.417968750.00390625當(dāng)d=0.005時(shí),按照以上算法,可得下面表和圖.練習(xí)題2.任意給定一個(gè)正實(shí)數(shù),設(shè)計(jì)一個(gè)算法求以這個(gè)數(shù)為半徑的圓的面積.3.任意給定一個(gè)大于1的正整數(shù)n,設(shè)計(jì)一個(gè)算法求出n的所有因數(shù).4.

溫馨提示

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

評論

0/150

提交評論