版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第五章迭代用Python程序編程實現(xiàn)求s=1+2+3+…+n的代碼。n=int(input(“請輸入一個正整數(shù):”))s=0foriinrange(1,n+1):
s=s+iprint(s)迭代實例:迭代的科學概念:重復反饋過程的活動,其目的通常是是為了使結(jié)果符合目標需求。每一次對過程的重復被稱為一次迭代,而每一次迭代得到的結(jié)果會被用來作為下一次迭代的初始值。計算機解決問題時,也經(jīng)常采用這種迭代的方式,即迭代算法。它利用計算機運算速度快、適合做重復性操作的特點,讓計算機重復執(zhí)行一組指令(或一些步驟),這組指令(或這些步驟)每執(zhí)行一次時,都會將變量從原值遞推出一個新值。迭代的概念:利用迭代算法處理問題,需要考慮以下三個方面:①確定迭代變量。在能夠用迭代算法處理的問題中,至少具有一個直接或間接地不斷由舊值遞推出新值的變量,這個變量就是迭代變量。②建立迭代關(guān)系式(數(shù)值關(guān)系)。所謂迭代關(guān)系式,指如何從變量的前一個值推出其下一個值的公式(或關(guān)系)。③控制迭代過程(結(jié)束條件)。迭代過程在經(jīng)過若干次重復執(zhí)行以后要能結(jié)束,因此,要設定迭代結(jié)束的條件。迭代的算法:n=int(input(“請輸入一個正整數(shù):”))s=0foriinrange(1,n+1):
s=s+iprint(s)迭代實例:迭代變量?數(shù)值關(guān)系?迭代過程?迭代實例:斐波那契數(shù)列、黃金分割數(shù)列、兔子數(shù)列黃金分割數(shù)列:第10個數(shù)字是什么?f1f2f1+f2112123235358581381321132134①確定迭代變量。②建立迭代關(guān)系。③控制迭代(結(jié)束)過程。f1,f2=1,1f3=f1+f2程序?qū)崿F(xiàn):迭代實例:斐波那契數(shù)列、黃金分割數(shù)列、兔子數(shù)列假定我們有一雄─雌一對剛出生的兔子,它們在長到一個月大小時開始懷孕,在第二月結(jié)束時產(chǎn)下另一對兔子,每對新生兔在出生一個月后又下崽,如此這般持續(xù)下去。假定沒有兔子死亡,在一年后總共有多少對兔子?①確定迭代變量。②建立迭代關(guān)系。③控制迭代(結(jié)束)過程。時間01月2月3月4月5月6月……幼兔1成兔0總數(shù)1①f1,f2,f3。②后一項為前兩項的和。③12個月。迭代實例:斐波那契數(shù)列、黃金分割數(shù)列、兔子數(shù)列假定一對大兔子每月能生一對小兔子,且每對新生的小兔子經(jīng)過一個月可以長成一對大兔子,具備繁殖能力,如果不發(fā)生死亡,且每次均生下一雌一雄。問一年后共有多少對兔子?①確定迭代變量。②建立迭代(數(shù)值)關(guān)系式。③控制迭代(結(jié)束)過程。時間01月2月3月4月5月6月……幼兔1011235成兔0112358總數(shù)11235813迭代實例:斐波那契數(shù)列、黃金分割數(shù)列、兔子數(shù)列時間01月2月3月4月5月6月……幼兔1011235成兔0112358總數(shù)11235813程序?qū)崿F(xiàn):f1=1f2=2foriinrange(3,13):f3=f1+f2f1=f2f2=f3print(f3)f1=1f2=2foriinrange(3,13):
f1,f2,=f2,f1+f2print(f2)輾轉(zhuǎn)相除法求兩個數(shù)的最大公約數(shù)的步驟如下:
先用小的一個數(shù)除大的一個數(shù),得第一個余數(shù);
再用第一個余數(shù)除小的一個數(shù),得第二個余數(shù);
又用第二個余數(shù)除第一個余數(shù),得第三個余數(shù);
這樣逐次用后一個數(shù)去除前一個余數(shù),直到余數(shù)是0為止.那么,最后一個除數(shù)就是所求的最大公約數(shù)(如果最后的除數(shù)是1,那么原來的兩個數(shù)是互質(zhì)數(shù)).
例如求1515和600的最大公約數(shù):
第一次:用600除1515,商2余315;第二次:用315除600,商1余285;
第三次:用285除315,商1余30;第四次:用30除285,商9余15;
第五次:用15除30,商2余0.1515和600的最大公約數(shù)是15.典型應用:輾轉(zhuǎn)相除法、歐幾里得算法典型應用:歐幾里得算法歐幾里得算法又稱輾轉(zhuǎn)相除法,用于計算兩個整數(shù)m,n的最大公約數(shù)?;诙ɡ恚篻cd(m,n)=gcd(n,m%n)即:整數(shù)m,n的最大公約數(shù)等于n和m除以n的余數(shù)的最大公約數(shù)。歐幾里得算法在執(zhí)行時,也是一個反復迭代的過程,直到余數(shù)等于0為止。Python代碼實現(xiàn)如下:defgcd(m,n):whilen!=0:temp=nn=m%nm=tempreturnmm,n是迭代變量,迭代關(guān)系式nm和m%nn,由舊值推出新值,然后循環(huán)執(zhí)行,直到余數(shù)為0,結(jié)束迭代。
迭代次數(shù)xnxn+1|xn+1-xn|111.50.521.51.4166670.08333331.4166671.4142160.00245141.4142161.4142140.000002相應的程序及測試結(jié)果如下所示:a=int(input(“請輸入一個需要求其平方根的數(shù):”))x=a/2while((abs(x+a/x)/2-x))>0.00001):x=(x+a/x)/2print(a,“的平方根約為”,round((x+a/x)/2,6))請輸入一個需要求其平方根的數(shù):22的平方根約為在用迭代法求2的平方根的例子中,若將迭代變量X的初值換為其他數(shù)值,對運行結(jié)果和迭代次數(shù)是否有影響?若把x的值設置為0或者其他負值
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025上海中醫(yī)藥大學附屬岳陽中西醫(yī)結(jié)合醫(yī)院病理科負責人崗位公開招聘備考題庫及答案解析(奪冠)
- 2025下半年浙江舟山市國際海運職業(yè)技術(shù)學院招聘高層次人才1人參考題庫必考題
- 2025中國科學院上海生命科學研究院生物化學與細胞生物學研究所分子細胞卓越中心韓雪祥組招聘博士后備考題庫及答案1套
- 2025云南大口馬牙國際旅行社有限公司招聘合同制工作人員筆試備考試卷(3人)及答案解析(奪冠)
- 2025云南昭通魯?shù)榭h公安局招聘輔警32人備考題庫及答案1套
- 2025南平武夷新區(qū)業(yè)務部門招聘3人參考題庫完美版
- 2025四川廣安市前鋒區(qū)人社局招聘見習生2人參考題庫必考題
- 2025國家公務員招錄考試即將發(fā)布考試備考題庫附答案
- 2025年臨沂市公安機關(guān)第四季度招錄警務輔助人員筆試的備考題庫新版
- 2025年保定學院輔導員考試筆試題庫附答案
- 電工承包簡單合同(2篇)
- 新能源電站單位千瓦造價標準值(2024版)
- 軍隊院校招生文化科目統(tǒng)一考試模擬試卷
- 03課題三-建筑運行大數(shù)據(jù)安全與數(shù)據(jù)質(zhì)量-20180703
- 工業(yè)區(qū)物業(yè)服務手冊
- 2024新能源集控中心儲能電站接入技術(shù)方案
- 河南省信陽市2023-2024學年高二上學期期末教學質(zhì)量檢測數(shù)學試題(含答案解析)
- 零售行業(yè)的店面管理培訓資料
- 培訓課件電氣接地保護培訓課件
- 污水管網(wǎng)工程監(jiān)理月報
- 安徽涵豐科技有限公司年產(chǎn)6000噸磷酸酯阻燃劑DOPO、4800噸磷酸酯阻燃劑DOPO衍生品、12000噸副產(chǎn)品鹽酸、38000噸聚合氯化鋁、20000噸固化劑項目環(huán)境影響報告書
評論
0/150
提交評論