算法及其描述_第1頁
算法及其描述_第2頁
算法及其描述_第3頁
算法及其描述_第4頁
算法及其描述_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

算法及其描述制作人:羅志華一、算法的概念兩個大人和兩個小孩一起渡河,渡口只有一條小船,一次只能渡過一個大人或兩個小孩,他們四人都會劃船,但都不會游泳。過河的方案:

第一步:兩個小孩同船渡過河去;第二步:一個小孩劃船回來;第三步:一個大人獨自劃船渡過河去;第四步:對岸的小孩劃船回來;第五步:兩個小孩再同船渡過河去;第六步:一個小孩劃船回來;第七步:余下的一個大人獨自劃船渡過河去;第八步:對岸的小孩劃船回來;第九步:兩個小孩再同船渡過河去。一、算法的概念

這個過河的方案就是這道趣味題的算法。算法就是解決問題的方法和步驟。在以后的編程中也要記住了,有些步驟是可以顛倒的,不影響程序的結果;但是有些一但顛倒了那最終的結果也就全變了。算法——解決問題的方法和步驟。

算法+數據結構=程序。

一、算法的概念

二、如何描述算法1、用自然語言描述算法2、用流程圖描述算法3、用偽代碼描述算法

1、用自然語言描述算法

自然語言——人們日常生活中使用的語言。

此種語言的特點:通俗語易懂,缺乏直觀性和簡潔,且易產生歧義。

使用此種語言的注意事項:描述要求盡可能精確,詳盡。

2、用流程圖描述算法特點:描述算法形象、直觀,容易理解。

流程圖符號:3、用偽代碼描述算法特點:描述的算法簡、易懂,修改容易,容易轉化為程序語言代碼。例:分析閏年的算法描述

第一個條件:ymod4=0

判斷閏年的條件:⑴y不能被100整除;⑵y能被400整除且y能被400整除。

判斷不是閏年的條件:⑴ymod4=0且ymod100=0,但y不能被400整除;⑵y不能被4整除。表示條件判斷語句

IF條件THEN執(zhí)行語句一

ELSE執(zhí)行語句二

ENDIF條件語句中可以包含多個子語句表示循環(huán)處理語句:

DoWhile條件循環(huán)語句

Loop3、用偽代碼描述算法實踐:比較自然語言、流程圖和偽代碼3種描述方法的優(yōu)缺點。三、算法的設計與選擇

200年前的一天,一位數學教師走進課堂,也許是想清靜一個小時,給四年級的學生們布置了一道題:從1加到100。5分鐘后,一個學生走到他跟前,交上了正確答案,這時他是多么吃驚呀!這怎么可能呢?這個孩子一定是個天才。

求9147485和5147480兩個數的最大公約數。算法的設計,直接影響著程序的通用性和解決問題的效率,總的來說,一個好的算法,應該是科學而又合理的算法。

三、算法的設計與選擇

第1步:輸入26個英文字母,它們分別對應1~26個數學。第2步:令a=1,k=3,n=26。第3步:使a的取值范圍為1≤a≤26,F(a)=(a+k)modn,轉第5步。第4步:a=a+1,轉第3步。第5步:輸出F(a)相對應的數字。第6步:把數學轉化成相當的字母,輸出字母第7步:累計字母出現順序,轉第4步。例:用自然語言描述摩斯密碼的原理練習:現有一串字母“PROGRAM”給它加密,請設計算法,用自然語言描述。

實踐練習:

一天,小猴子從樹上摘下若干個桃子,當即吃了一半,覺得不過癮,又吃了一個。第二天小猴子接著吃剩

溫馨提示

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

評論

0/150

提交評論