陣列程式設計實作
Scratch變數和清單的程式設計概念
程式定義 |
資料筆數 |
資料型態 |
資料操作 |
資料保存 |
|
變數(variable) |
存放會改變的資料 |
一個變數只能存一筆資料 |
數字、字串 ,一個變數中僅能存放其中一種 |
對資料能指派(賦值)、修改 |
修改後原始的資料將被覆蓋 |
清單(list) |
存放同性資的資料,資料可以改變 |
一個清單中能存多筆資料 |
數字、字串,一個清單中能同時存放 |
對資料能增加、刪除、插入、查詢等應用 |
依使用的資料操作指令決定資料是否保留 |
Scratch變數和清單的規劃應用
Q:下面2個程式設計需求,你會選擇用變數或清單來設計?
程式1:設計一個遊戲程式,打到指定角色得到1分,遊戲結束看到總分的應用。
程式2:設計一個成績單程式,用來將記錄國文、英文、數學的考試成績,輸入完成後可以查詢各科分數的應用。
A:
程式1需求分析:
存放得到分數的功能 -> 只需一筆資料
每次得到分數就會累積增加 -> 表示資料是可以改變
選擇使用「變數」來設計
程式2需求分析:
存放國文、英文、數學 -> 共需三筆資料
各科分數輸入完成後 -> 可以進行查詢成績
記錄多筆同性質的資料 -> 都是存放成績分數
選擇使用「清單」來設計
清單是一個重要的資料結構.而scratch清單,就是其它程式語言中的陣列(array) |
資料來源
https://icoding.com.tw/articles/are-scratch-variable-and-list-different.php
實作1-大樂透摸彩
題目:編號1~42的摸彩卷進行電腦大抽獎,將抽出三名頒發獎品。
提示:
1.
新增清單,命名為摸彩箱
2.新增變數,命名為號碼
3.將數字1~42隨機放入摸彩箱清單
4.取出清單前三項數字頒發獎品(特獎 頭獎 貳獎)
教學影片
進階:
題目:隨機選取一個三位數,如果這個三位數是3的倍數,就放進清單中,直到取出10個為止
分析問題
1. 先建立一個變數命名為「抽籤」,和建立一個清單「選選」
2. 變數「抽籤」設為隨機抽取一個三位數
3. 判斷式:如果被抽出來的數(抽籤)能被3整除,就放進清單中
4. 重複直到清單的項目數有10個為止
初始化設定:點綠旗後先清空清單項目,才能每次點綠旗都抽10個
三位數及3的倍數
資料引用
https://cyc-channel.gitbook.io/scratch/de-shi-jie-zhen-mei