Page 6 - eFC10810_程式語言與設計(下)_課本PDF
P. 6
本書導覽
1
5 重複結構 1 章首頁
前言提綱挈領,導入本章學習內容,並輔以「情境
5-1 迴圈基本架構
5-2 計數迴圈 For-Next
5-3 條件迴圈 Do-Loop 當程式中必須執行多次某個敘述區段時,便可
5-4 巢狀迴圈 以使用「重複結構」的敘述,也就是所謂的「迴 應用」圖文實例,使學生預先體會所學成效。
5-5 變更迴圈流程 圈」。例如:設計跑馬燈要顯示幾回、紅綠
燈要閃爍幾次、帳號密碼允許輸入幾次,以及
5-6 Timer 控制項
1+2+…+100 累加程式或動畫的延遲時間等。
情境應用
情境應用
用迴圈製造 4 個亂數 1~9 的數字
執行迴圈,讓草群女孩跳起舞來!
FC10810-CH05.indd 1 2019/10/9 下午 01:38:44
程式打卡 4 3
2 語法說明 3. 執行程式,按「二維陣列」鈕,顯示數列值。
重複結構 5 新增一個「Windows Form 應用程式」,檔案名稱命名為「愛心園遊會」。 5 重複結構
動作要求:
‧ 宣告一個二維陣列用來儲存愛心園遊會三個年級各區的營業額。
「語法說明」介紹該單元運 ‧ 設定陣列初始值如下表。 A區 B區 C區 D區
年級
高一 9600 12000 15000 8800
高二 15000 9000 24000 10000
用之指令、語法。 ‧ 按下按鈕後,分別顯示高一 ~ 高三的總營業額。 12500 9500
11000
高三
8000
語法說明 2
二維陣列初始值 1. 表單佈置如圖所示。
6 6
陣列 陣列
陣列初始值設定語法 語 意
Dim 陣列名稱 ( ) As 資料型態 = { 陣列初始值串列 } 宣告陣列並設定陣列元素初始值
3 程式打卡 1 宣告一個包含初始值的二維陣列:
Dim B( , ) As Integer = {{2, 4, 6, 8}, {10, 12, 14, 16}, {18, 20, 22, 24}}
7 B(0,0)=2 B(0,1)=4 B(0,2)=6 B(0,3)=8 2. 快按按鈕物件兩下,在 Button1_Click 事件中輸入下列程式碼。 7
函式 B(1,0)=10 B(1,1)=12 B(1,2)=14 B(1,3)=16 函式
與副程式 Private Sub Button1_Click(…) Handles Button1.Click 與副程式
B(2,0)=18 B(2,1)=20 B(2,2)=22 B(2,3)=24
Dim A(,) As Integer = {{9600, 12000, 15000, 8800}, {15000,
「程式打卡」則藉簡單範例 2 宣告陣列並同時設定初始值時,不可指定最大註標值,陣列大小由初始值的個數來 9000, 24000, 10000}, {8000, 11000, 12500, 9500}} 高一總營業額
決定。
Label5.Text = A(0, 0) + A(0, 1) + A(0, 2) + A(0, 3)
例 2: Label6.Text = A(1, 0) + A(1, 1) + A(1, 2) + A(1, 3)
Dim B(,) As Integer = {{2, 4, 6, 8}, 執行結果 Label7.Text = A(2, 0) + A(2, 1) + A(2, 2) + A(2, 3)
練習,使學生熟悉指令用法。 {10, 12, 14, 16}, {18, 20, 22, 24}} X=8+20+10=38 End Sub
Dim X As Integer
綜合應用 8 8 綜合應用
X = (B(0, 3) + B(2, 1) + B(1, 0))
112 113
4 點子追蹤
設定 Timer 控制項屬性初始值的方式也和其他控制項一樣,可視需要直接在屬性 表單設計
生活化的情境設計,使學生樂於透
視窗上設定,或在 Form_Load() 中以敘述來設定,如表 5-1 所示。
表 5-1 Timer 控制項屬性初始值設定方式
使用屬性視窗來設定 使用程式敘述來設定
Private Sub Form1_Load(sender As
5 5
重複結構 Object, e As EventArgs) Handles 重複結構 過實作理解程式精神。經由「執行
MyBase.Load
Timer1.Enabled = False
Timer1.Interval = 1000
End Sub 結果」、「表單設計」與「解碼動
4 解碼動態
點子追蹤
6 點子追蹤 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 6
陣列 Timer1. Interval = 1000 設定 Timer1 執行間隔時間為 1 秒 陣列 態」等單元,引領學生一步步完成
上班上課常常遲到嗎?設計一個電子鬧鐘,隨時提醒自己。 TextBox1.Text = ""
動作要求: End Sub
‧ 顯示目前電腦的時間。
‧ 讓使用者輸入鬧鐘時間。 情境範例。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
‧ 當鬧鐘時間一到,顯示「起床了 !!」字樣。
Timer1. Enabled = True 啟動 Timer1,每隔 1 秒自動執行 Timer1_Tick 內敘述
執行結果 End Sub
7 7
函式 函式
與副程式 與副程式
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Label1.Text = Format(Now(), "HH:mm:ss") 顯示現在時間,並設為「時 :
If TextBox1.Text = Label1.Text Then 分 : 秒」各為兩位數的格式
當鬧鐘設定時間等於電腦系
Timer1.Enabled = False 停止 Timer1
統時間
Label1.Text = " 起床了 !!"
End If
8 8
綜合應用 End Sub 綜合應用
78 79
'$ ᇜኬͦ@/FX JOEE