媽媽在陪伴孩子學習少兒程式設計時,首先需要理解的是:程式處理的資料主要是數字,文字以及數字序列和文字序列,序列裡面的每一項可以是數字或文字。
如果孩子要編寫一個計算全班同學數學平均分的程式,那麼每個同學的數學分數是數字,同學的名字是文字,所有同學的分數是一個數字序列,所有同學的名稱是一個文字序列。
如果孩子要程式設計一個通訊錄的程式,那麼每個聯絡人的手機號是文字,為什麼不是數字?聯絡人姓名,地址等都是文字,所有的聯絡人的姓名是一個文字序列。
這裡把程式處理的資料分為數字,文字以及數字序列和文字序列,我們稱為資料的型別。知道了資料的型別後我們才知道用什麼把資料儲存起來供程式處理。在Scratch少兒程式設計中儲存資料需要會選用數字還是文字。
數字
文字
序列或列表
一個溫度告警程式,當溫度高於某個設定值時計算機播放溫度過高告警聲音。這裡有哪些資料呢?分別是什麼資料型別呢?
溫度值是數字,溫度的單位攝氏度是文字,而告警聲音呢?如果孩子用Scratch程式設計只是播放聲音,那麼告警聲音就是告警聲音檔案的連結地址,此時告警聲音就是文字。但根本的聲音和影象資料是數字序列,這是我們需要深入理解的。
聲音是數字序列大家說話的聲音像水流一樣是連續的,稱為聲波,計算機處理的聲音資料是以每秒上萬次的速度對聲波進行取樣,每一次取樣都記錄下了原始模擬聲波在某一時刻的數值,將一串的數值連線起來,就可以描述一段聲音了。
這是一個聲音檔案,檔案裡面已經是描述聲音的數字了(這裡是16進位制數)
一張圖片是數字序列大家知道圖片是有一個個畫素點組成,比如1024*768的圖片,這個圖片由1204行,每行有768個畫素點組成。 每個畫素點顏色值可以由RGB24模型確定,每個畫素點顏色值是數字,整個圖片是所有畫素點的數字序列。
開發的程式如果需要處理聲音或影象,那麼我們都要處理聲音、影象的原始數字序列嗎?
比如上面例子提到的播放告警聲音,絕大數開發語言都可以直接載入一個聲音檔案播放聲音,因此聲音具體的數值是不需要我們處理的。但如果一個程式想識別聲音內容,那麼就需要讀取聲音的具體聲音數字序列了。又比如大家在一個網頁上看到一個影象,頁面開發人員只需要知道這個影象的連結地址就可以把這個影象顯示出來,而如果是影象識別程式那麼就需要處理原始的影象數值序列了。媽媽和孩子閱讀完這篇文章需要理解的知識是:
程式處理的資料主要是數字、文字。數字、文字稱為資料的型別。
教媽媽輔導孩子學少兒程式設計2:程式處理的資料如何儲存?