第八次上課認識演算法與程試設計

運算思維

神奇的演算法

演算法

演算法是指運算的具體步驟,就是為了解決某一問題所設計的一套有限運算規則的集合


演算法特性

1.輸入(Input) 

輸入的資料至少(大於等於)0 個。

2.輸出(Output) 

輸出的結果至少(大於等於)1 個。

3.明確性(Defi niteness)

演算法的每一個處理動作都必須明確。

4.有限性(Finiteness)

必須在有限的步驟或時間內結束,不能無限期的執行。

5.有效性(Effectiveness)

演算法的處理步驟必須是具體可行的。

步驟標準化

流程圖

使用特定圖形和符號表達解決問題的順序與步驟

取自翰林七上p165

到校流和程圖,請利用下列工具完成作圖並繳交作業

Drawio簡易教學 

Drawio簡易教學

fchart教學   軟體下載

fchart

程式語言

看完這部短片您有什麼想法?

語言是溝通的橋樑,人與人透過自然語言(中文與英文...)溝通,它是自然演化的,要根據上下文意來判斷,例如"今天和朋友聚餐好不快樂",若以此語言與電腦溝通,那電腦是無法判斷到底是快樂還是不快樂,故需要精確地與電腦溝通需要程式語言,它是由人發明及定義的,與其他語言一樣有其字彙與語法 ,簡而言之.程式語言就是人與電腦溝通的工具。為了讓電腦能夠完成工作,電腦專家就為程式語言制定一套特定的格式與語法規則,指揮電腦完成工作。 不同類型的程式語言,語法格式就不同,就如同中文.英文.法文...等,語法是不一樣的。 

程式語言的分類

1.機器語言:

是早期所使用的低階語言,也是電腦唯一能識別的語言,由二進位 (0與1)組成指令,可以直接在電腦中執行,因此執行效能最好。但因為 不易學習與使用,編寫錯誤也不易發現,後期發展出組合語言。

2組合語言:

使用一些簡單且有意義的文字來撰寫,例如ADD(加),組合語言必須經過組譯的處理,才可以在機器上執行;執行速度雖快,但必須對硬體結構瞭解的人才能撰寫

3.高階語言:

接近人類語言的程式語言 ,必須先轉譯成機器語言,才能被電腦硬體執行(scratch 就是高階)。 


資料來源:https://sites.google.com/a/ysjh.hc.edu.tw/sing/home/05zi-xun-ke-cheng/07wan-ji-mu-xue-cheng-shi/7-2

我要學習那一種程式

資料來源:https://medium.com/appworks-school/most-popular-programming-language-for-first-time-learners-54b7da125e3c

如果沒有特別目的的人,詳細介紹兩種最多人學習,使用領域也非常廣泛的語言:Python 與 C++ 

運算思維作業

請將以下步驟畫程流程圖(可發揮創意每個人炒飯流程不一定相同)

準備材料

開中小火熱鍋,加油。

將蛋的蛋液倒入鍋中,用煎匙將蛋液推散,類似炒蛋花,直到油脂炒乾。

把炒蛋聚集在鍋子的半邊,另外半邊再次加入橄欖油,再放肉絲。

肉絲炒到半熟後,和炒蛋混合,加入胡椒粉。

加入白飯,用煎匙稍微翻動、輕撥。

再次加入胡椒粉,再均勻撒上醬油。

最後加入蔥花,並依個人喜好調味,即可起鍋。