Page 7 - ePC11110_資訊科技_課本PDF
P. 7
範例4-19 計算 1+2+3+4+5 的結果
01 Sub Main() 分析引導
02 Dim X% = 5 在「1+2+3+4+5」的累加運算式中,
03 Debug.print (FA(X)) 可 以 看 成 是「1+2+3+4」+「5」,
例如快遞公司要寄送商品,如果有 4 個地點要送,順序是 S → A → B → T,
04 End Sub 即 為 將「1+2+3+4」 的累 加結 果再
05 從出發地到下一個目的地有不同的路線,如圖 3-4.9 所示。從地點 S 到 A 有 3 條不 作
加 上「5」。 因 此, 若 將 FA(n)
Function FA(n)
06 同的路徑,依照貪婪演算法,司機會選擇最短路徑 10。因此,司機走訪 4 個地點
為從 1 累加到 n 的遞迴函式,則得
If n = 1 then
07 的最短路徑總和為 10+15+20=45。 出 FA(5)= FA(5-1) +5,若要計算出
08 Return FA = 1
FA(5-1) = FA(4) 的 值, 則 將 n=4 再
' 以 Return 指令回傳 FA 值 代 入 FA(n) 函 式 中, 得 出 FA(4) =
09 else
10 Return FA = n + FA(n-1) FA(4-1) + 4。得出遞迴函式為 FA(n)
= FA(n-1) + n。
' 以 Return 指令回傳 FA 值
End If
11 例如圖 3-2.2 網路報名並繳款的流程圖,其中「進入系統註冊帳號」的處理動作可
12 End Function
再細分出來,流程圖如圖 3-2.3 所示。 另外,題目「1+2+3+4+5」的累加
運算式從 5 累加到 1 為止,因此當
圖 3-4.9 最短路徑問題
累加值傳入 n=1 時,則 FA(1) = 1。
章首學習引路燈 結果:15 動動腦
說明:1. 程式第 10 行 Return FA = n + FA(n-1),會在程序中呼叫自身程序。
章首附有精美的大圖,提供 2. 將 X = 5 放入 FA 自定函式中,FA 的回傳運算過程如下: 用來加強說明課文的相關主題或範例,幫助學
假設要從地點 C 到地點 T,依照貪婪演算法 回傳
執行
判斷
呼叫
的選擇路徑為何?請試著討論,該範例使用
該章的學習目標,帶領學生 FA(5) n = 5 Return 5 + FA(5-1) FA(5) = 5 + FA(4) 生對學習內容更深一層的理解。
貪婪演算法是最佳解答嗎?
FA(4) n = 4 Return 4 + FA(4-1) FA(4) = 4 + FA(3)
逐步認識新章節。 FA(3) n = 3 Return 3 + FA(3-1) FA(3) = 3 + FA(2)
FA(2) n = 2 Return 2 + FA(2-1) FA(2) = 2 + FA(1)
FA(1) n = 1 Return 1 FA(1) = 1
WOW !知識
知識
知識
資訊百科
副程式 傳回值 呼叫時
Sub(子程序) 無 需使用 Call 指令
穿插內文中,延伸學習主題,拓展學習視野。
Function(函式) 有,以 Return 指令回傳值 可直接輸入 Function 函式名稱
圖 3-2.3 「進入系統註冊帳號」模組的流程圖
Chapter 04 程式設計—使用 Visual Basic 191
數位 FUN 手做
數位FUN 手做 01
數位FUN手做
穿插內文中,課堂實作練習,加強學習效果。
依據下列條件,畫出計算電費的流程圖。
Chapter 03 演算法 129
1. 輸入用電度數。
2. 若用電在 100 度 ( 含 ) 以內,每度 3 元,超過 100 度以上,超過的部分每度 4 元。
3. 印出應繳電費。
118 資訊科技 INFORMATION TECHNOLOGY Chapter 03 課後習題
Chapter 01 探討活動
�擇題
3-1 ( ) 1. 關於陣列資料結構的運作原理,下列何種特性是錯誤的? 在我們的生活中,已經有相當多的應用導入雲端運算、人工智慧與物聯網的技術,
(A) 包含名稱
(B) 包含索引 請試著討論下列項目使用到哪些技術?並試著說出這些應用分別使用哪些關鍵技術?
(C) 在記憶體中以連續的區塊儲存元素
項目 討論項目
(D) 只能循序存取。
●雲端運算 ●人工智慧 ○物聯網
( ) 2. 關於指標資料結構的運作原理,下列何種特性是錯誤的?
(A) 包含資料 (B) 包含指標
(C) 可以隨機存取 (D) 可以減少記憶體浪費。 1. Gmail 是 Google 提供的雲端應用服務,屬於 SaaS 軟體即服
務基礎。
( ) 3. 關於堆疊資料結構的運作原理,符合下列何種特性? 2. Google 利用機器學習技術,可有效辨識垃圾郵件與網路釣魚
(A) 先進先出 (B) 後進先出 (C) 只進不出 (D) 只出不進。 郵件。
Gmail
( ) 4. 關於佇列資料結構的運作原理,符合下列何種特性?
(A) 先進先出 (B) 後進先出 (C) 只進不出 (D) 只出不進。
○雲端運算 ○人工智慧 ○物聯網
( ) 5. 關於各種資料結構的運作原理,下列何種特性是錯誤的?
(A) 陣列可以隨機存取 (B) 佇列較浪費記憶體
(C) 佇列存取在不同端 (D) 陣列存取資料在同一端。
(
課後習題 探討活動
3-2
) 6. 下列何者是演算法所必須具備的特性之一?
(B) 有限性(Finiteness)
(A) 開放性(Openness)
YouBike
(C) 一致性(Consistency) (D) 不可分割性(Atomicity)。
( ) 7. 下列有關演算法 (Algorithm)的敘述,何者不正確?
各章末提供習題,測驗學生學習成果,作為調 各章末提供探討活動,讓學生可以學會思考與
(A) 虛擬碼(Pseudo Code)必須遵守程式語言的語法,才能描述演算法
○雲端運算
○人工智慧
○物聯網
(B) 流程圖(Flowchart) 為描述演算法的一種方法
(C) 演算法的設計必須符合有效性(Effectiveness)
整學習方向之參考。 分析問題,與他人進行探討,並選用適合的資
(D) 演算法的設計必須符合有限性(Finiteness)。
( ) 8. 下列何者不是描述演算法的方式?
(A) 文字敘述 (B) 流程圖 (C) 虛擬碼 (D) 甘特圖。 訊科技合作共創。
動態表情 Animoji
( ) 9. 在流程圖中,通常以何種符號來表示決策或判斷?
(A) (B) (C) (D) 。
144 資訊科技 INFORMATION TECHNOLOGY 44 資訊科技 INFORMATION TECHNOLOGY
v