第十次:結構化程式設計(2)


程式設計基本觀念2-資料輸入輸出及運算

資料輸入輸出

教學影片1

在電腦科學中,抽象化(Abstraction)是用來減少複雜度

補充

抽象化(Abstraction)

1.重要性

在資訊工程領域方面是非常重要的概念,簡單的來說抽象化的工作是要把現實世界中的物件轉到電腦世界的物件,藉由移除不重要細節,降低理解現實世界複雜度,在實現資訊系統中,能夠控制

其過程或以綜觀的角度來瞭解許多特定領域的事物。如此一來,現實社會中的問題,就可以在電腦的世界中,加以解決。

2.重點


抽象化有兩個重點:移除細節(Detail removal)以及程式碼(或演算法)一般化(Code generalization)

(1)移除細節就是系統分析中,將複雜的細節的移除,只要保留相關的、重要的資料與介面。

(2)程式碼一般化是說當有重複性的功能或函式,利用歸納,合併成一個或少數幾個功能或函式。


3.對象

抽象化的對象可以針對資料本身(data)或者是程式碼本身(code)

(1)資料抽象化來說,在現實社會的大學資訊系統中,會有大學生、碩士生、博士生、而學生類別(Student)是資料一般化而得的抽象概念;講師、助理教授、副教授、教授一般化為教師;職員與教師則進一步一般化

為教職員。學生的類別(Student),在資料抽象化(data abstraction)的過程當中,我們會認為學生應該有學生的學號、名字、性別、出生 年月日、住址等。

(2)程式碼抽象化(code abstraction)的過程中,學生應該有註冊、選課、休學等功能。

4.舉例

5.小結

抽象化是適當的表現資料與功能,減少程式開發的複雜度。

思考問題:在日常生活中有哪些抽象化的例子?


資料運算

教學影片2

Scratch運算積木

算術運算子

四則運算

餘數

四捨五入

隨機數

實作1-Scratch運算練習

實作2-遊戲專案-判斷奇偶數

遊戲下載

運算思維導向程式設計

1.問題解析

在數學中,奇偶性是對於整數的一種性質,每個整數都可被分為奇數或偶數,怎麼區分奇數和偶數呢?通常,能被2整除的正整數都是偶數不可2整除的正整數都是偶數為奇數

生活範例

首先想像一下我們坐在教室中,每兩個人坐在一起,如果正好都成對,就不會有同學單獨坐了。這時便是能被2整除,餘數是0的狀態。如果有一個同學是自己坐,那就是餘數是1的狀態。因此,如果全班同學都成對坐,那麼班人人數是偶數;而有一名同學是自己坐的話,班級人數則是奇數。

舉一個簡單的例子:.7除以2得餘數1,則7是奇數; 8除以2得餘數0,則8是偶數。按照這個原理,我們可以判斷任意一個正整數是奇數的還是偶數。

2.演算法設計(流程控制)

先把問題想成文章

這是我們寫下每一段程式,都會經過腦裡的步驟,就是先學會跟電腦說話。


1. 首先先輸入一個正整數

2. 然後等待使用者輸入答案

3. 檢查輸入正整數,(如果)餘數為0就說(輸出)偶數,(否則)就說(輸出)奇數

3.程式設計

任務1:點綠旗及角色.使用者輸入正整數判斷奇偶數.若餘數為0說偶數.否則說奇數

程式執行結果:

提示:

任務2:若使用者故意不輸入正整數例如0.8.那要如何修改程式讓使用者當輸入不正確的資料型態時給提示請他重新輸入呢?

程式執行結果:

參考網站

http://m.ituring.com.cn/book/tupubarticle/22638

https://kknews.cc/zh-tw/news/k6qavkr.html


作業上傳到雲端

1.點自己班的連結.輸入各班密碼

0714

0715

0716

0717

0718

2.點自己的座號資料夾

3.點上傳

4.選桌面你的作業107****-2.sb2

5.檢查是否上傳成功