1.1.1算法的概念學(xué)習(xí)資料_第1頁
1.1.1算法的概念學(xué)習(xí)資料_第2頁
1.1.1算法的概念學(xué)習(xí)資料_第3頁
1.1.1算法的概念學(xué)習(xí)資料_第4頁
1.1.1算法的概念學(xué)習(xí)資料_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1.1.1算法的概念一、教學(xué)目標(biāo):1、知識與技能:(1)了解算法的含義,體會算法的思想。(2)能夠用自然語言敘述算法。(3)掌握正確的算法應(yīng)滿足的要求。(4)會寫出解線性方程(組)的算法。2、過程與方法:通過求解二元一次方程組,體會解方程的一般性步驟,從而得到一個解二元一次方程組的步驟,這些步驟就是算法,不同的問題有不同的算法。由于思考問題的角度不同,同一個問題也可能有多個算法,能模仿求解二元一次方程組的步驟,寫出一個求有限整數(shù)序列中的最大值的算法。二、重點與難點:重點:算法的含義、解二元一次方程組和判斷一個數(shù)為質(zhì)數(shù)的算法設(shè)計。難點:把自然語言轉(zhuǎn)化為算法語言。三、學(xué)法與教學(xué)用具:學(xué)法:1、寫出的算法,必須能解決一類問題(如:判斷一個整數(shù)n(n>1)是否為質(zhì)數(shù);求任意一個方程的近似解;……),并且能夠重復(fù)使用。2、要使算法盡量簡單、步驟盡量少。3、要保證算法正確,且計算機能夠執(zhí)行,如:讓計算機計算1×2×3×4×5是可以做到的,但讓計算機去執(zhí)行“倒一杯水”“替我理發(fā)”等則是做不到的。四、教學(xué)設(shè)想:創(chuàng)設(shè)情境:算法作為一個名詞,在中學(xué)教科書中并沒有出現(xiàn)過,我們在基礎(chǔ)教育階段還沒有接觸算法概念。但是我們卻從小學(xué)就開始接觸算法,熟悉許多問題的算法。如,做四則運算要先乘除后加減,從里往外脫括弧,豎式筆算等都是算法,至于乘法口訣、珠算口訣更是算法的具體體現(xiàn)。我們知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解線性方程組的算法,求兩個數(shù)的最大公因數(shù)的算法等。因此,算法其實是重要的數(shù)學(xué)對象。探索研究算法(algorithm)一詞源于算術(shù)(algorism),即算術(shù)方法,是指一個由已知推求未知的運算過程。后來,人們把它推廣到一般,把進(jìn)行某一工作的方法和步驟稱為算法。廣義地說,算法就是做某一件事的步驟或程序。菜譜是做菜肴的算法,洗衣機的使用說明書是操作洗衣機的算法,歌譜是一首歌曲的算法。在數(shù)學(xué)中,主要研究計算機能實現(xiàn)的算法,即按照某種機械程序步驟一定可以得到結(jié)果的解決問題的程序。比如解方程的算法、函數(shù)求值的算法、作圖的算法,等等。例題分析:例1閱讀課本例1,任意給定一個大于1的整數(shù)n,試設(shè)計一個程序或步驟對n是否為質(zhì)數(shù)做出判定。算法分析:根據(jù)質(zhì)數(shù)的定義,很容易設(shè)計出下面的步驟:第一步:判斷n是否等于2,若n=2,則n是質(zhì)數(shù);若n>2,則執(zhí)行第二步。第二步:依次從2至(n-1)檢驗是不是n的因數(shù),即整除n的數(shù),若有這樣的數(shù),則n不是質(zhì)數(shù);若沒有這樣的數(shù),則n是質(zhì)數(shù)。這是判斷一個大于1的整數(shù)n是否為質(zhì)數(shù)的最基本算法。例2用二分法設(shè)計一個求議程x2–2=0的近似根的算法。算法分析:回顧二分法解方程的過程,并假設(shè)所求近似根與準(zhǔn)確解的差的絕對值不超過0.005,則不難設(shè)計出以下步驟:第一步:令f(x)=x2–2。因為f(1)<0,f(2)>0,所以設(shè)x1=1,x2=2。第二步:令m=(x1+x2)/2,判斷f(m)是否為0,若則,則m為所長;若否,則繼續(xù)判斷f(x1)·f(m)大于0還是小于0。第三步:若f(x1)·f(m)>0,則令x1=m;否則,令x2=m。第四步:判斷|x1–x2|<0.005是否成立?若是,則x1、x2之間的任意取值均為滿足條件的近似根;若否,則返回第二步。小結(jié):算法具有以下特性:(1)有窮性;(2)確定性;(3)順序性;(4)不惟一性;(5)普遍性例3給出求1+2+3+4+5的一個算法.解:算法1按照逐一相加的程序進(jìn)行.第一步:計算1+2,得到3;第二步:將第一步中的運算結(jié)果3與3相加,得到6;第三步:將第二步中的運算結(jié)果6與4相加,得到10;第四步:將第三步中的運算結(jié)果10與5相加,得到15.算法2運用公式直接計算.第一步:取=5;第二步:計算;第三步:輸出運算結(jié)果.算法3用循環(huán)方法求和.第一步:使,;第二步:使;第三步:使;第四步:使;第五步:如果,則返回第三步,否則輸出.說明:①一個問題的算法可能不唯一.②若將本例改為“給出求的一個算法”,則上述算法2和算法3表達(dá)較為方便.例4給出求解方程組的一個算法.分析:解線性方程組的常用方法是加減消元法和代入消元法,這兩種方法沒有本質(zhì)的差別,為了適用于解一般的線性方程組,以便于在計算機上實現(xiàn),我們用高斯消元法(即先將方程組化為一個三角形方程組,在通過回代過程求出方程組的解)解線性方程組.解:用消元法解這個方程組,步驟是:第一步:方程①不動,將方程②中的系數(shù)除以方程①中的系數(shù),得到乘數(shù);第二步:方程②減去乘以方程①,消去方程②中的項,得到;第三步:將上面的方程組自下而上回代求解,得到,.所以原方程組的解為.引申:下面寫出求方程組的解的算法:說明:(1).從例1、例2可以看出,算法具有兩個主要特點:①有限性:一個算法在執(zhí)行有限個步驟后必須結(jié)束.“有限性”往往指在合理的范圍之內(nèi),如果讓計算機執(zhí)行一個歷時1000年才結(jié)束的算法,這雖然是有限的,但超過了合理的限度,人們也不把它視作有效算法.“合理限度”一般由人們的常識和需要以及計算機的性能而定.②確定性:算法的每一個步驟和次序應(yīng)當(dāng)是確定的.例如,一個健身操中一個動作“手舉過頭頂”,這個步驟就是不確定的、含糊的.是雙手都舉過頭,還是左手或右手?舉過頭頂多少厘米不同的人可以有不同的理解.算法中的每一個步驟不應(yīng)產(chǎn)生歧義,而應(yīng)當(dāng)是明確無誤的.(2).一般來說,算法應(yīng)有一個或多個輸出,算法的目的是為了求解,沒有輸出的算法是沒有意義的.例5寫出一個求有限整數(shù)列中的最大值的算法。解:算法如下。S1先假定序列中的第一個整數(shù)為“最大值”。S2將序列中的下一個整數(shù)值與“最大值”比較,如果它大于此“最大值”,這時你就假定“最大值”是這個整數(shù)。S3如果序列中還有其他整數(shù),重復(fù)S2。S4在序列中一直到?jīng)]有可比的數(shù)為止,這時假定的“最大值”就是這個序列中的最大值。六.回顧小結(jié)1.算法的概念:對一類問題的機械的、統(tǒng)一的求解方法.算法是由基本運算及規(guī)定的運算順序所構(gòu)成的完整的解題步驟,或者是按照要求設(shè)計好的有限的計算序列,并且這樣的步驟或序列能解決一類問題.2.算法的重要特征:(1)有限性:一個算法在執(zhí)行有限步后必須結(jié)束;(2)確切性:算法的每一個步驟和次序必須是確定的;(3)輸入:一個算法有0個或多個輸入,以刻劃運算對象的初始條件.所謂0個輸入是指算法本身定出了初始條件.(4)輸出:一個算法有1個或多個輸出,以反映對輸入數(shù)據(jù)加工后的結(jié)果.沒有輸出的算法是毫無意義的.課后作業(yè)1、寫出解一元二次方程ax2+bx+c=0(a≠0)的一個算法。2、寫出求1至1000的正數(shù)中的3倍數(shù)的一個算法(打印結(jié)果)1.有A、B、C三個相同規(guī)格的玻璃瓶,A裝著酒精,B裝著醋,C為空瓶,請設(shè)計一個算法,把A、B瓶中的酒精與醋互換.2.寫出解方程的一個算法.3.已知,,寫出求直線AB斜率的一個算法.4.“雞兔同籠”是我國隋朝時期的數(shù)學(xué)著作《孫子算經(jīng)》中的一個有趣而具有深遠(yuǎn)影響的題目:“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?”請你先列出解決這個問題的方程組,并設(shè)計一個解該方程組的算法.1.一個人帶三只狼和三只羚羊過河,只有一條船,同船可以容納一個人和兩只動物.沒有人在的時候,如果狼的數(shù)量不少于羚羊的數(shù)量,狼就會吃掉羚羊.請設(shè)計過河的算法.解:算法或步驟如下:S1人帶兩只狼過河;S2人自己返回;S3人帶一只羚羊過河;S4人帶兩只狼返回;S5人帶兩只羚羊過河;S6人自己返回;S7人帶兩只狼過河;S8人自己返回;S9人帶一只狼過河.2.寫出求的一個算法.解:第一步:使,;第二步:使;第三步:使;第四步:使;第五步:使;第六步:如果,則返回第三步,否則輸出.1、寫出解一元二次方程ax2+bx+c=0(a≠0)的一個算法。2、寫出求1至1000的正數(shù)中的3倍數(shù)的一個算法(打印結(jié)果)6、評價標(biāo)準(zhǔn)1、解:算法如下S1計算△=b2-4acS2如果△〈0,則方程無解;否則x1=S3輸出計算結(jié)果x1,x2或無解信息。2、解:算法如下:S1使i=1S2i被3除,得余數(shù)rS3如果r=0,則打印i,否則不打印S4使i=i+1S5若i≤1000,則返回到S2繼續(xù)執(zhí)行,否則算法結(jié)束。7、作業(yè):1、寫出解不等式x2-2x-3<0的一個算法。解:第一步:x2-2x-3=0的兩根是x1=3,x2=-1。第二步:由x2-2x-3<0可知不等式的解集為{x|-1<x<3}。評注:該題的解法具有一般性,下面給出形如ax2+bx+c>0的不等式的解的步驟(為方便,我們設(shè)a>0)如下:第一步:計算△=;第二步:若△>0,示出方程兩根(設(shè)x1>x2),則不等式解集為{x|x>x1或x<x2};第三步:若△=0,則不等式解集為{x|x∈R且x};第四步:若△<0,則不等式的解集為R。2、求過P(a1,b1)、Q(a2,b2)兩點的直線斜率有如下的算法:第一步:取x1=a1,y1=b1,x2=a2,y1=b2;第二步:若x1=x2;第三步:輸出

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論