陣列程式設計實作


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