算法和算法的描述課件_第1頁
算法和算法的描述課件_第2頁
算法和算法的描述課件_第3頁
算法和算法的描述課件_第4頁
算法和算法的描述課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

信息技術(選修1)算法與程序設計第一章第二節(jié)算法和算法的描述計算機解決問題的過程分析問題設計算法編寫程序調試程序信息技術(選修1)算法與程序設計算法和算法的描述計算機解決問學習、生活中的算法猜數(shù)字游戲規(guī)則如下:電腦隨機生成一個1——1000之間的一個數(shù)字,游戲者猜一個1——1000之間的一個數(shù)字,如果猜中了,顯示“猜中了,您用了X次才猜出來”,如果沒猜中,計算機告訴您是大了還是小了,并且繼續(xù)猜。學習、生活中的算法猜數(shù)字游戲規(guī)則如下:電腦隨機生成一個1——結合猜數(shù)字游戲,思考并回答如下問題:1、計算機扮演了什么角色?3、游戲者猜數(shù)字的次數(shù)是否固定?次數(shù)是否有限?4、計算機能否給出“大了或小了”的提示?2、游戲者輸入數(shù)據(jù)后,計算機根據(jù)數(shù)據(jù)大小判斷后給出哪些提示?理解算法結合猜數(shù)字游戲,思考并回答如下問題:1、計算機扮演了什么角色算法的概念通俗地說:算法就是用計算機解決某一問題的步驟和方法,是能被機械地執(zhí)行的動作或指令的有窮集合。算法的概念通俗地說:算法就是用計算機解決某一問題的步驟和方法現(xiàn)實生活中的算法用銀行自動取款機取款算法

1插入銀行卡

2輸入密碼后按確定3若密碼不正確,返回2

3選擇取款項4輸入金額后按確定5將錢取出6取回銀行卡超市,收銀員操作的算法

1拿起顧客的挑選食品

2用掃描器把條形碼掃描進計算機

3若一個顧客的商品位掃描完繼續(xù)第2步4計算機處理數(shù)據(jù):單價、數(shù)量、總價

5計算機打印給顧客總花費

6顧客付錢營業(yè)員收錢找錢現(xiàn)實生活中的算法用銀行自動取款機取款算法

1插入銀行卡

2輸算法的特征輸入有窮性確定性能行性輸出我們已經(jīng)了解了算法的概念,接下來我們一起研究一下算法具備什么樣的特征,以猜數(shù)字游戲為例,我們思考并歸納出算法特征:游戲者輸入數(shù)據(jù)計算機給出相關提示有限個步驟之后完成猜數(shù)字游戲確定地給出“大了”或者“小了”或者“猜對了”的信息,不會出現(xiàn)“大了或小了”的提示計算機作裁判,讓每個步驟都能完成算法的特征輸入有窮性確定性能行性輸出我們已經(jīng)了解了算法的概念算法的描述:請用自然語言描述猜數(shù)字游戲的算法2、計算機隨機生成一個1——1000以內的整數(shù)3、用戶猜數(shù)字:輸入一個數(shù)字1、單擊開始4、如果輸入的數(shù)字比隨機數(shù)字小,則顯示“小了,再來一次”;同時,統(tǒng)計你猜數(shù)字的次數(shù)并顯示“這是您第*次猜了”,單擊“重填”,返回第3步5、如果輸入的數(shù)字比隨機數(shù)字大,則顯示“大了,再來一次”;同時統(tǒng)計你猜數(shù)字的次數(shù)并顯示“這是您第*次猜了”,單擊“重填”,返回第3步6、如果輸入的數(shù)字等于隨機數(shù)字,則顯示“對了,您真行”;同時統(tǒng)計你猜數(shù)字的次數(shù)并顯示“您共猜了*次”,結束;出現(xiàn)“再玩一次”按鈕,若單擊此按鈕可返回第1步算法的描述:請用自然語言描述猜數(shù)字游戲的算法2、計算機隨機生這種描述方法通俗易懂,但有其局限性:語句一般很長、容易造成歧義、復雜算法比較難清晰表示出來,也不方便翻譯成計算機可以直接執(zhí)行的程序設計語言。請問還有其他描述算法的方法嗎?有沒有更加清晰簡潔的描述方式嗎?自然語言描述算法的優(yōu)缺點這種描述方法通俗易懂,但有其局限性:語句一般很長、容易造成歧開始X≥5稱蘋果重量x價錢y=x*10*0.8yesno打印總價等信息價錢y=x*10結束用流程圖描述超市稱重打單系統(tǒng)開始X≥5稱蘋果重量x價錢y=x*10*0.8yesno用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成不同的程序設計語言用流程圖描述算法的優(yōu)點用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成流程圖基本圖形及其功能流程圖基本圖形及其功能例題例題:某商場為了對蘋果進行促銷,規(guī)定購買達到或者超過5千克可以在原價每千克10元的基礎上打8折。請同學們設計算法,由計算機完成:輸入所買蘋果的千克數(shù),輸出應付款。分別用自然語言和流程圖描述算法1、輸入斤數(shù)x2、如果x≥5,則y=x*10*0.8

否則y=x*103、輸出y分析:用x代表購買蘋果的千克數(shù),y代表應付款,如果x≥5,則y=x*10*0.8

否則y=x*10用流程圖描述這個算法例題例題:某商場為了對蘋果進行促銷,規(guī)定購買達到或者超過5千兩個同學一組,討論合作完成學習任務單兩個同學一組,討論合作完成學習任務單用偽代碼描述算法用自然語言描述算法,通俗易懂,但有其局限性:容易造成歧義、語句一般很長、復雜算法比較難清晰表示出來,也不方便翻譯成程序設計語言用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成不同的程序設計語言我們設計算法,目的是讓計算機去處理數(shù)據(jù),最終將計算的結果呈現(xiàn)給我們,為了更為方便地向程序設計語言過渡,人們也經(jīng)常用偽代碼描述算法:自然語言描述的算法偽代碼描述的算法1、輸入斤數(shù)xInputx2、如果x≥5,則y=x*10*0.8

否則y=x*10Ifx>=5theny=x*10*0.8elsey=x*103、輸出yPrinty用偽代碼描述算法用自然語言描述算法,通俗易懂,但有其局限性:描述算法的一些方法自然語言流程圖偽代碼N-S框圖PAD圖以上形式描述的算法,都不能直接被計算機執(zhí)行,最終都要轉化成計算機程序讓計算機去執(zhí)行。描述算法的一些方法自然語言流程圖偽代碼N-S框圖PAD圖以上由猜數(shù)字游戲、過河問題我們可以得知,一個問題,可能有多種算法,應該通過分析、比較、挑選一種最優(yōu)的算法。一個好算法必須用到科學的方法,應該好好學習各學科處理問題的科學方法。由猜數(shù)字游戲、過河問題我們可以得知,一個問題,可能有小結算法的概念算法的特征算法的描述算法就是解決某一問題的步驟和方法輸入、輸出、確定性、有窮性、可行性自然語言、流程圖、偽代碼等下節(jié)課我們將開始學習用程序設計語言實現(xiàn)自己的算法,讓計算機幫我們解決現(xiàn)實生活中的難題小結算法的概念算法的特征算法的描述算法就是解決某一問題的步驟課后討論猜數(shù)字游戲,排除運氣關系,如何猜能最快地猜出計算機隨機生成的數(shù)字課后討論猜數(shù)字游戲,排除運氣關系,THEENDThanksverymuchTHEEND信息技術(選修1)算法與程序設計第一章第二節(jié)算法和算法的描述計算機解決問題的過程分析問題設計算法編寫程序調試程序信息技術(選修1)算法與程序設計算法和算法的描述計算機解決問學習、生活中的算法猜數(shù)字游戲規(guī)則如下:電腦隨機生成一個1——1000之間的一個數(shù)字,游戲者猜一個1——1000之間的一個數(shù)字,如果猜中了,顯示“猜中了,您用了X次才猜出來”,如果沒猜中,計算機告訴您是大了還是小了,并且繼續(xù)猜。學習、生活中的算法猜數(shù)字游戲規(guī)則如下:電腦隨機生成一個1——結合猜數(shù)字游戲,思考并回答如下問題:1、計算機扮演了什么角色?3、游戲者猜數(shù)字的次數(shù)是否固定?次數(shù)是否有限?4、計算機能否給出“大了或小了”的提示?2、游戲者輸入數(shù)據(jù)后,計算機根據(jù)數(shù)據(jù)大小判斷后給出哪些提示?理解算法結合猜數(shù)字游戲,思考并回答如下問題:1、計算機扮演了什么角色算法的概念通俗地說:算法就是用計算機解決某一問題的步驟和方法,是能被機械地執(zhí)行的動作或指令的有窮集合。算法的概念通俗地說:算法就是用計算機解決某一問題的步驟和方法現(xiàn)實生活中的算法用銀行自動取款機取款算法

1插入銀行卡

2輸入密碼后按確定3若密碼不正確,返回2

3選擇取款項4輸入金額后按確定5將錢取出6取回銀行卡超市,收銀員操作的算法

1拿起顧客的挑選食品

2用掃描器把條形碼掃描進計算機

3若一個顧客的商品位掃描完繼續(xù)第2步4計算機處理數(shù)據(jù):單價、數(shù)量、總價

5計算機打印給顧客總花費

6顧客付錢營業(yè)員收錢找錢現(xiàn)實生活中的算法用銀行自動取款機取款算法

1插入銀行卡

2輸算法的特征輸入有窮性確定性能行性輸出我們已經(jīng)了解了算法的概念,接下來我們一起研究一下算法具備什么樣的特征,以猜數(shù)字游戲為例,我們思考并歸納出算法特征:游戲者輸入數(shù)據(jù)計算機給出相關提示有限個步驟之后完成猜數(shù)字游戲確定地給出“大了”或者“小了”或者“猜對了”的信息,不會出現(xiàn)“大了或小了”的提示計算機作裁判,讓每個步驟都能完成算法的特征輸入有窮性確定性能行性輸出我們已經(jīng)了解了算法的概念算法的描述:請用自然語言描述猜數(shù)字游戲的算法2、計算機隨機生成一個1——1000以內的整數(shù)3、用戶猜數(shù)字:輸入一個數(shù)字1、單擊開始4、如果輸入的數(shù)字比隨機數(shù)字小,則顯示“小了,再來一次”;同時,統(tǒng)計你猜數(shù)字的次數(shù)并顯示“這是您第*次猜了”,單擊“重填”,返回第3步5、如果輸入的數(shù)字比隨機數(shù)字大,則顯示“大了,再來一次”;同時統(tǒng)計你猜數(shù)字的次數(shù)并顯示“這是您第*次猜了”,單擊“重填”,返回第3步6、如果輸入的數(shù)字等于隨機數(shù)字,則顯示“對了,您真行”;同時統(tǒng)計你猜數(shù)字的次數(shù)并顯示“您共猜了*次”,結束;出現(xiàn)“再玩一次”按鈕,若單擊此按鈕可返回第1步算法的描述:請用自然語言描述猜數(shù)字游戲的算法2、計算機隨機生這種描述方法通俗易懂,但有其局限性:語句一般很長、容易造成歧義、復雜算法比較難清晰表示出來,也不方便翻譯成計算機可以直接執(zhí)行的程序設計語言。請問還有其他描述算法的方法嗎?有沒有更加清晰簡潔的描述方式嗎?自然語言描述算法的優(yōu)缺點這種描述方法通俗易懂,但有其局限性:語句一般很長、容易造成歧開始X≥5稱蘋果重量x價錢y=x*10*0.8yesno打印總價等信息價錢y=x*10結束用流程圖描述超市稱重打單系統(tǒng)開始X≥5稱蘋果重量x價錢y=x*10*0.8yesno用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成不同的程序設計語言用流程圖描述算法的優(yōu)點用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成流程圖基本圖形及其功能流程圖基本圖形及其功能例題例題:某商場為了對蘋果進行促銷,規(guī)定購買達到或者超過5千克可以在原價每千克10元的基礎上打8折。請同學們設計算法,由計算機完成:輸入所買蘋果的千克數(shù),輸出應付款。分別用自然語言和流程圖描述算法1、輸入斤數(shù)x2、如果x≥5,則y=x*10*0.8

否則y=x*103、輸出y分析:用x代表購買蘋果的千克數(shù),y代表應付款,如果x≥5,則y=x*10*0.8

否則y=x*10用流程圖描述這個算法例題例題:某商場為了對蘋果進行促銷,規(guī)定購買達到或者超過5千兩個同學一組,討論合作完成學習任務單兩個同學一組,討論合作完成學習任務單用偽代碼描述算法用自然語言描述算法,通俗易懂,但有其局限性:容易造成歧義、語句一般很長、復雜算法比較難清晰表示出來,也不方便翻譯成程序設計語言用流程圖描述的算法清晰簡潔,容易表達復雜的算法,有利于轉化成不同的程序設計語言我們設計算法,目的是讓計算機去處理數(shù)據(jù),最終將計算的結果呈現(xiàn)給我們,為了更為方便地向程序設計語言過渡,人們也經(jīng)常用偽代碼描述算法:自然語言描述的算法偽代碼描述的算法1、輸入斤數(shù)xInputx2、如果x≥5,則y=x*10*0.8

否則y=x*10Ifx>=5theny=x*10*0.8elsey=x*103、輸出yPrinty用偽代碼描述算法用自然語言描述算法,通俗易懂,但有其局限性:描述算法的一些方法自然語言流程圖偽代碼N-S框圖PAD圖以上形式描述的算法,都不能直接被計算機執(zhí)行,最終都要轉化成計算機程序讓計算機去執(zhí)行。描述算法的一些方法自然語言流程圖偽代碼N-S框圖PAD圖以上由猜數(shù)字游戲、過河問題我們可以得知,一個問題,可能有多種算法,應該通過分析、比較、挑選一種最優(yōu)的算法。一個好算法必須用到科學的方法,應該好好學習各學科

溫馨提示

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

最新文檔

評論

0/150

提交評論