算法的概念及描述、控制結構、解決問題的過程 課件 2022-2023學年高中信息技術浙教版(2019)必修1_第1頁
算法的概念及描述、控制結構、解決問題的過程 課件 2022-2023學年高中信息技術浙教版(2019)必修1_第2頁
算法的概念及描述、控制結構、解決問題的過程 課件 2022-2023學年高中信息技術浙教版(2019)必修1_第3頁
算法的概念及描述、控制結構、解決問題的過程 課件 2022-2023學年高中信息技術浙教版(2019)必修1_第4頁
算法的概念及描述、控制結構、解決問題的過程 課件 2022-2023學年高中信息技術浙教版(2019)必修1_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章算法與問題解決浙教版(2019版)信息技術(高中)必修1

數據與計算2.1算法的概念及描述

學習目標123算法的概念。算法的特征。算法的要素。算法的描述。431里脊肉切厚一點的大片。2肉中加少許鹽、料酒腌一下。3蔥、姜、胡蘿卜切細絲。4碗中加三小勺醋、兩小勺糖、一小勺生抽兌成汁。5淀粉加適量水、一小勺食用油,調成比較稠的糊,倒入肉片中,用手抓勻。6鍋中放多一些油,油燒至七成熱時,將肉片一片片放入油里,中火炸制,炸到稍上色時撈出,等油燒熱后,重新入油鍋中炸一遍,炸至金黃撈出。7鍋內留少許底油,放入蔥姜絲、胡蘿卜絲煸炒出香味。8倒入炸好的肉片。烹入碗汁,翻炒均勻。9烹入碗汁,翻炒均勻。古代的算法主要指的是“算術”,即數值的算術運算。隨著科學技術的發(fā)展,算法的內涵和外延逐漸發(fā)生變化。古代的算法廣義地講,算法指的是解決問題或完成任務的一系列步驟。既包括傳統(tǒng)意義上計算任務,也可以是生活中各種事物的處理。廣義算法

計算機領域內,算法指的是用計算機解決問題的步驟。是為了解決問題而讓計算機執(zhí)行的有序、無歧義的,有限步驟的集合。1、

算法的定義計算機算法拓展鏈接窮舉算法也稱枚舉算法,指的是在求解過程中,先按照一定的順序一一列所有可能的解,然后用條件判斷列舉出的可能解是否為正確解。窮舉法一般適合解決解集為離散的且范圍明確的問題?!半u翁一,值錢五;雞母一,值錢三;雞雛三,值錢一;百錢買雞百,問翁、母、雛各幾何?”這是我國古代數學家在《算經》中提出的經典問題。同時,他還在書中給出了解決該問題的算法“雞翁每增四,雞母每減七,雞雛每益三,即得"。百錢買百雞窮舉算法2算法的特征圖2.1.1高一新生報到流程著名數學家華羅庚曾經提出“燒水泡茶問題”,水壺和杯子未洗,水未燒,但是要泡茶喝,我們該怎么辦?給出你的解決方案,寫明步驟過程。(提示:考慮一下那些事情是可以同時完成的)2、算法的特征√

有窮性

算法必須能在執(zhí)行有限個步驟之后終止。√

確定性算法中的每一次運算都有明確的定義,具有無二義性,并且可以通過計算得到唯一的結果?!?/p>

0個或多個輸入項一個算法有0個或多個輸入。所謂0個輸入是指本身給出了初始條件?!?/p>

1個或多個輸出項算法一定要有輸出。任何算法都不能“無功而返”?!?/p>

可行性算法中執(zhí)行的任何運算都可以在有限的時間內完成。3、算法的要素數據運算控制

轉移

用算法解決問題時,必須明確參與運算的初始數據、運算時產生的中間數據以及代表問題解決的結果數據。在對數據進行運算時,必須明確每一步的運算是什么、對哪些數據進行運算等。在算法執(zhí)行過程中,有時需要根據數據或運算結果的特點進行不同的處理,這時就需要運用控制轉移來執(zhí)行不同的操作。習題練習9例1:下列關于算法的概念及描述,說法正確的是(

)A.算法就是數學運算方法B.算法的第一個執(zhí)行步驟必須是數據輸入C.算法的一個步驟可以被執(zhí)行多次D.算法只能用自然語言進行描述C10觀看視頻“機器人工作原理”很多設備的“自動”功能,都是內部算法控制的結果。比如,在夏天把空調溫度設定在26℃(如圖2.1.4所示),每當空調內部的溫度傳感器測得室內溫度小于或等于26℃時,算法就會“告訴”空調已經到達目標溫度,可以暫停工作,空調就會“自動”暫時關閉壓縮機的運行。這樣,既確保了室內溫度,又實現了節(jié)能環(huán)保。還有很多設備用算法來幫助設備實現自動化。與同學討論交流,哪些設備來用算法實現了自動化?并嘗試說出這些設備實現自動化控制的算法。問題與討論:2.1.2算法的描述1、用自然語言描述算法圖2.1.5停車場中的車位探測解決本問題的算法可以用自然語言描述如下。(1)輸入變量flag的值。(2)若flag的值為1,則設置指示燈為綠色,輸出“空車位”;否則,設置指示燈為紅色,輸出“非空車位”。2、用流程圖描述算法圖形名稱功能開始/結束符表示算法的開始或結束輸入/輸出表示數據的輸入或輸出處理框表示數據的運算處理判斷框表示算法中的條件判斷流程線表示算法中的流向連接點表示算法中的轉接“N-S圖”是由美國學者納西(Nassi)和斯奈德曼(Shneiderman)提出的一種在流程圖中完全去掉流程線,全部算法寫在一個矩形框內的算法描述方式。相比于原來的流程圖描述,結構性顯得更好,也更有助于高效地編寫程序。前面車位探測中的算法,可用N-S圖表示成如下形式。輸入flag的值指示燈綠色指示燈紅色輸出“空車位”輸出“非空車位”Flag=1?是否拓展鏈接:3、用偽代碼描述算法偽代碼指的是一種比較直觀簡潔的、符號接近計算機程序代碼的算法描述方式,其風格很像計算機程序設計語言,但又不是真正的可以被計算機理解的代碼。偽代碼的表示方法沒有統(tǒng)一、嚴格的規(guī)定,只要定義合理、表達正確即可。格式1:If條件then(語句序列1)Else(語句序列2)格式2:If條件then(語句序列1)格式:while條件

(循環(huán)體)條件判斷語句循環(huán)語句Flag車位探測結果;#將測得的車位當前狀態(tài)值輸入給變量flagIfflag=1then

(指示燈綠色輸出“空車位”)Else

(指示燈紅色

輸出“非空車位”)4、用計算機程序設計語言描述算法前面車位探測中的算法可以用C++程序設計語言描述如下:

voidMainWindow::on_pushButton_clickedO{intflag=ui->lineEdit->textO.toIntO;if(flag==1)(ui->label_4->setStyleSheet("color:green;");ui->label_4->setText("綠色");ui->label_5->setText("空車位”);}else{ui->label_4->setStyleSheet("color:red;");ui->label_4->setText("紅色”);ui->label_5->setText("非空車位”);}}該程序的運行結果分別如圖2.1.7和圖2.1.8所示。該算法還可以用Python程序設計語言描述如下:flag=int(input(“輸入車位狀態(tài)值:"))ifflag==1:print("綠色”)print("空車位")else:print("紅色”)print("非空車位")計算機程序設計語言計算機程序設計語言經歷了“機器語言一匯編語言一高級語言”的發(fā)展歷程。機器語言中的指令由“0”“1”二進制碼組成,機器執(zhí)行效率高但可讀性、維護性差。為了提升編程的效率,科學家用特定的符號(助記符)來表示各個機器指令,發(fā)明了匯編語言??茖W家后來又發(fā)明了高級語言,用接近人類日常用語的符號來表示各類指令。常見的高級語言有Basic、C、C++、Java、Python、Ruby等。拓展鏈接圖2.1.10智能電飯煲燒飯算法流程圖繼續(xù)高熱燒飯變?yōu)榈蜔岜厮伎寂c練習第2章算法與問題解決浙教版(2019版)信息技術(高中)必修1

數據與計算2.2算法的控制結構

學習目標123順序結構分支結構循環(huán)結構(1)順序結構:算法中各個步驟按照先后順序依次執(zhí)行的結構。案例:網上購買火車票時,必須嚴格按照順序依次進行各個步驟。如下圖所示。網上購票算法第一個操作第二個操作第三個操作順序結構抽象(2)分支結構(選擇結構):先進行條件判斷,再根據判斷結果分別執(zhí)行不同處理的控制結構。案例:判斷一元二次方程ax2+bx+c=0是否存在實數根。抽象分支1分支(條件)結構條件滿足?分支2是否(3)循環(huán)結構:在條件控制下,某些操作步驟需要重復執(zhí)行(循環(huán))的控制結構。案例:(超市收銀系統(tǒng))收銀時,收銀員用掃描儀逐個掃描商品上的條形碼,隨著一連串的“滴”聲,收銀員可以快速地完成顧客所購商品的費用結算。抽象圖2.2.5循環(huán)結構算法流程圖程序設計中的“累加器”“累加器”指的是算法執(zhí)行過程中對同類事物或數據進行統(tǒng)計計算的實現技術。上述算法中的Sum+X就起到了累加的作用。算法的三種控制結構順序結構選擇結構(又稱分支結構)循環(huán)結構計算結果:②處的判斷條件:計算結果:35r=1?15智能農業(yè)大棚通過傳感器、控制器、網絡設施和計算機程序等來實現大棚的自動化管理(如圖2.2.8).例如,自動溫度控制系統(tǒng)中的溫度傳感器每隔一定時間采集大棚中的溫度,一旦溫度超過預設的最高溫度40℃,控制系統(tǒng)會啟動通風和噴水系統(tǒng)實現降溫;如果溫度低于預設的最低溫度18℃,控制系統(tǒng)會啟動加熱器,給大棚升溫。思考與練習:圖2.2.8智能農業(yè)大棚(1)自動溫度控制系統(tǒng)進行溫度控制的算法用流程圖描述如圖2.2.9所示,請完善該流程圖,在①、②處填入合適的內容。圖2.2.9智能農業(yè)大棚溫控系統(tǒng)的算法流程圖溫度超過預設的最高溫度?溫度低于預設的最低溫度?2.3算法解決問題的過程第一步:抽象與建模

溫馨提示

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

最新文檔

評論

0/150

提交評論