引言
流程圖是強大的視覺工具,能將複雜的問題解決過程轉化為清晰、逐步的圖示。無論您是初學者學習程式設計基礎,還是經驗豐富的開發者記錄業務邏輯,流程圖都能提供一種通用語言,用於溝通演算法與流程。

本綜合指南將透過實用且已解答的範例,帶您掌握流程圖的基礎。我們將探討五個常見的程式設計問題——從找出兩個數中的最大值到生成乘法表——並示範如何以視覺化方式呈現每個解決方案。在閱讀完本文後,您將了解如何將演算法轉換為流程圖,並使用現代工具如Visual Paradigm輕鬆建立專業圖表。
關鍵概念
在深入範例之前,讓我們先建立流程圖的基本構成要素:

| 符號 | 名稱 | 用途 |
|---|---|---|
| 橢圓形 | 終止符 | 標示流程圖的開始或結束 |
| 平行四邊形 | 輸入/輸出 | 代表資料輸入或輸出作業 |
| 矩形 | 處理 | 表示計算、賦值或動作 |
| 菱形 | 判斷 | 代表條件分支(是/否) |
| 箭頭 | 流程線 | 指示流程方向 |
| 圓形 | 連接器 | 連結流程圖的不同部分 |
核心原則
-
順序流程:除非另有指示,否則流程由上至下執行
-
決策分支:菱形圖形根據條件將流程分流
-
迴圈:箭頭可迴圈返回以重複步驟,直到滿足條件為止
-
清晰度:每個符號應具有單一且明確的目的
使用 PlantUML 圖表的已解範例
範例 1:找出兩個數中的最大值
演算法:
-
開始
-
輸入兩個變數
a與b -
檢查條件:如果
a > b,請前往第 4 步;否則前往第 5 步 -
輸出「a 較大」
-
輸出「b 較大」
-
結束

@startuml
skinparam ActivityBackgroundColor #E3F2FD
skinparam ActivityBorderColor #1565C0
start
:輸入 a, b;
if (a > b?) then (是)
:輸出「a 較大」;
else (否)
:輸出「b 較大」;
endif
stop
@enduml
說明:決策菱形評估a > b。若為真,則執行左側分支;否則執行右側分支。兩條路徑最終在結尾處匯合。
範例 2:檢查數字是奇數還是偶數
演算法:
-
開始
-
輸入
a -
檢查條件:如果
a % 2 == 0,請前往第 5 步;否則前往第 4 步 -
輸出「數字為奇數」
-
輸出「數字為偶數」
-
結束

@startuml
skinparam ActivityBackgroundColor #F3E5F5
skinparam ActivityBorderColor #7B1FA2
start
:輸入 a;
if (a % 2 == 0?) then (Yes)
:輸出「數字為偶數」;
else (No)
:輸出「數字為奇數」;
endif
stop
@enduml
說明: 取模運算子 % 會回傳餘數。如果餘數為零,則該數字為偶數;否則為奇數。
範例 3:將輸入的數字輸出 5 次
演算法:
-
開始
-
輸入數字
a -
初始化
c = 1 -
檢查條件:如果
c <= 5,請前往第 5 步;否則前往第 7 步 -
輸出
a -
c = c + 1,前往步驟 4 -
停止

@startuml
skinparam ActivityBackgroundColor #E8F5E9
skinparam ActivityBorderColor #2E7D32
start
:輸入 a;
:c = 1;
repeat
:列印 a;
:c = c + 1;
repeat while (c <= 5?) is (Yes)
->No;
stop
@enduml
說明:此處引入了一個迴圈結構。計數器c追蹤迭代次數。迴圈在c <= 5時重複執行,將輸入的數字列印五次。
範例 4:列印 1 到 10 的數字
演算法:
-
開始
-
初始化
c = 1 -
檢查條件:若
c < 11,前往步驟 4;否則前往步驟 6 -
列印
c -
c = c + 1,前往步驟 3 -
停止

@startuml
skinparam ActivityBackgroundColor #FFF3E0
skinparam ActivityBorderColor #E65100
start
:c = 1;
while (c < 11?) is (Yes)
:Print c;
:c = c + 1;
endwhile (No)
stop
@enduml
說明:一個 while 迴圈在每次迭代前檢查條件。此迴圈執行於 c = 1, 2, ..., 10,印出每個數字直到 c達到 11 為止。
範例 5:印出前 5 個 3 的倍數
演算法:
-
開始
-
初始化
c = 1 -
檢查條件:若
c < 6,前往第 4 步;否則前往第 6 步 -
印出
3 * c -
c += 1,前往第 3 步 -
結束

@startuml
skinparam ActivityBackgroundColor #E0F7FA
skinparam ActivityBorderColor #00695C
start
:c = 1;
while (c < 6?) is (Yes)
:Print 3 * c;
:c += 1;
endwhile (No)
stop
@enduml
說明:此迴圈在每次迭代時將計數器乘以 3,產生輸出:3, 6, 9, 12, 15.
工具組合:Visual Paradigm 流程圖 + VPasCode + AI
現代圖表繪製已因 AI 輔助工具而徹底革新。Visual Paradigm提供一套完整的流程圖創建套件:

Visual Paradigm 流程圖
-
拖放介面:直觀的符號面板,內含標準流程圖形狀
-
智慧對齊:自動網格吸附與連接線佈線
-
豐富格式設定:自訂顏色、字體與主題,以產出專業成果
-
匯出選項:PNG、SVG、PDF 格式及直接分享連結
VPasCode(Visual Paradigm 即程式碼)
-
文字轉圖表:撰寫 PlantUML 或 Mermaid 程式碼,即可即時生成圖表
-
友善版本控制:將圖表儲存為文字,以整合 Git
-
快速原型設計:適合偏好使用鍵盤而非滑鼠的開發人員
AI 輔助圖表繪製
-
自然語言輸入:以普通英文描述您的流程——AI 將自動生成流程圖
-
自動完成:AI 根據上下文建議後續步驟
-
錯誤偵測:識別邏輯缺口,例如缺失的決策分支
-
演算法轉流程圖:貼上偽代碼,讓 AI 將其轉換為圖表
工作流程提示:從自然語言描述開始 → 讓 AI 草擬流程圖 → 使用 VPasCode 進行精修 → 在 Visual Paradigm 的視覺編輯器中完善。
結論
流程圖仍然是視覺化演算法與流程最有效的工具之一。透過本指南中的五個已解決範例,我們利用「PlantUML」進行基於程式碼的圖表生成。

重點摘要:
-
流程圖使用標準符號(橢圓形、矩形、菱形、平行四邊形)來代表不同的操作
-
決策結構支援分支邏輯;迴圈結構支援重複執行
-
PlantUML 提供一種基於文字、可進行版本控制的圖表建立方法
-
Visual Paradigm結合了拖放操作的便利性、VPasCode 的彈性以及 AI 輔助功能,使其成為初學者與專業人士的理想工具
無論您是在設計簡單的奇偶檢查器,還是記錄複雜的業務工作流程,掌握流程圖都能提升您的問題解決能力並改善與利害關係人的溝通。從紙筆開始,遷移至 PlantUML 以獲得精確度,並善用如 Visual Paradigm 等 AI 驅動工具,讓您的圖表栩栩如生。
準備好建立您的第一張流程圖了嗎?請嘗試 Visual Paradigm 的免費線上編輯器,或將上述其中一個 PlantUML 範例貼入 VPasCode,即可立即看到渲染結果。










