跳轉到內容

A-level 計算機/CIE/基礎問題解決和程式設計技能/演算法設計和問題解決

來自 Wikibooks,為開放世界提供開放書籍
規範連結

演算法

  • 理解演算法是透過一系列定義步驟來解決問題
  • 為問題使用的資料表示使用合適的識別符號名稱
    • 使用識別符號表來概括識別符號名稱
  • 理解許多演算法使用賦值、順序、選擇和重複這四種基本構造
  • 理解簡單演算法包含輸入、處理、輸出在各個階段
  • 使用以下方法記錄簡單演算法
    • 結構化英語
    • 虛擬碼(在考試試卷中,任何給定的虛擬碼將使用 Courier New 字型呈現)
    • 程式流程圖
  • 使用逐步細化過程將演算法表達到可程式設計的細節級別
  • 將問題分解成子任務,從而引出程式模組(過程/函式)的概念
  • 理解為什麼使用邏輯語句來定義演算法解決方案的一部分
  • 使用邏輯語句來定義演算法解決方案的一部分

結構圖

  • 使用結構圖來表達演算法設計中各個模組/過程/函式的輸入和輸出
  • 描述結構圖的目的
  • 為給定問題構建結構圖
  • 從結構圖中推匯出等效的虛擬碼

糾正性維護

  • 透過以下方式進行白盒測試
    • 選擇合適的資料
    • 使用跟蹤表
  • 透過使用已完成的跟蹤表來識別演算法中的任何錯誤
  • 如果需要,修改演算法

適應性維護

  • 根據規範變更修改演算法和資料結構
  • 分析現有程式並進行修改以增強功能

結構圖

[編輯 | 編輯原始碼]
結構圖可以映射覆雜任務的結構和資料流

軟體工程中的結構圖是顯示系統分解成其最低可管理部分的圖表。它們用於結構化程式設計,將程式模組排列成樹狀結構。每個模組由一個框表示,該框包含模組的名稱。樹結構視覺化模組之間的關係,顯示使用箭頭在模組之間傳輸資料。結構圖是自頂向下設計的示例,其中問題(程式)被分解成其組成部分。樹顯示模組之間的關係,顯示模型之間的資料傳輸。

符號 名稱 含義
模組
名稱
過程 每個框表示一個程式設計模組,這可能是一個計算一些數字的平均值或列印一些工資單的東西
資料對 從一個模組傳遞到另一個模組需要處理的資料。
標誌 [擴充套件 - 您不需要在考試中知道這一點] 檢查傳送到程序以停止或啟動程序的資料。例如,當讀取的檔案結束時,或者一個標誌來說明發送的資料是否為正確的格式
結構圖中選擇的表示

結構圖中的選擇由菱形符號確定。這意味著將檢查一個條件,並且根據結果,將執行不同的模組。

左側程式碼的結構圖

使用半圓形箭頭,我們可以在結構圖中表示迭代。

華夏公益教科書