编程基础/流程图
流程图是一种图表,用于表示算法、工作流或过程。流程图将步骤显示为各种类型的框,并通过箭头连接框来表示它们的顺序。这种图表表示说明了给定问题解决方案模型。流程图用于分析、设计、记录或管理各个领域的流程或程序。[1]
流程图将代码中的步骤显示为相互连接的形状,并用箭头连接。主要目标是创建对编码问题解决方案的粗略草稿。流程图中看到的形状类型取决于程序员想要创建的语句。例如,“if”语句(仅在特定条件为真时才起作用的代码部分)由菱形表示,而循环语句(允许代码部分根据需要重复自身)由六边形表示。流程图还可以对不同类型的语句进行颜色编码,使代码更易于阅读。
以下是常见的流程图符号和示例。在第一次阅读本节时,请重点关注简单符号和示例。在后面的章节中再回到本节,回顾高级符号和示例。
圆角矩形或终点表示流程图的起点和终点。
注意:默认流程是从左到右,从上到下(与阅读英文的方式相同)。为了节省时间,箭头通常只在流程线与正常方向相反时绘制。
平行四边形表示输入或输出操作。
矩形表示过程,例如数学计算或变量赋值。
菱形用于表示决策符号中测试的真/假语句。
程序模块在流程图中用一个矩形表示,并用一些线来区分它与过程符号。程序员通常会在程序控制和特定任务模块之间,或在本地函数和库函数之间进行区分。
有时流程图会分成两个或多个更小的流程图。这通常是在流程图不适合单个页面,或者必须分成几个部分时进行的。连接符符号(是一个带字母或数字的小圆圈)允许你在同一页面上连接两个流程图。看起来像衬衫上口袋的连接符符号,允许你连接到不同页面上的流程图。
我们将通过显示一些伪代码的流程图来演示各种流程图元素。
伪代码:没有参数传递的函数
Function clear monitor Pass In: nothing Direct the operating system to clear the monitor Pass Out: nothing End function
伪代码:主函数调用清除监视器函数
Function main Pass In: nothing Doing some lines of code Call: clear monitor Doing some lines of code Pass Out: value zero to the operating system End function
下一个项目是关于一个简单的温度转换程序的伪代码。这演示了页面内和页面外连接符的使用。它还说明了顺序控制结构,其中没有发生任何不寻常的事情。只需按照列表中的顺序依次执行每个指令。
伪代码:顺序控制结构
Filename: Solution_Lab_04_Pseudocode.txt
Purpose: Convert Temperature from Fahrenheit to Celsius
Author: Ken Busbee; © 2008 Kenneth Leroy Busbee
Date: Dec 24, 2008
Pseudocode = IPO Outline
input
display a message asking the user for the temperature in Fahrenheit
get the temperature from the keyboard
processing
calculate the Celsius by subtracting 32 from the Fahrenheit temperature then multiply the result by 5 then divide the result by 9. Round up or down to the whole number.
HINT: Use 32.0 when subtracting to ensure floating-point accuracy.
output
display the Celsius with an appropriate message
pause so the user can see the answer
伪代码:如果则否则
If age > 17 Display a message indicating you can vote. Else Display a message indicating you can't vote. Endif
伪代码:情况
Case of age 0 to 17 Display "You can't vote." 18 to 64 Display "You are in your working years." 65 + Display "You should be retired." End case
伪代码:While
count assigned zero While count < 5 Display "I love computers!" Increment count End while
伪代码:For
For x starts at 0, x < 5, increment x Display "Are we having fun?" End for
for 循环没有标准的流程图方法,您会发现它以不同的方式完成。 作为计数循环的 for 循环可以类似于作为计数循环的 while 循环进行流程图。
伪代码:Do While
count assigned five Do Display "Blast off is soon!" Decrement count While count > zero
伪代码:Repeat Until
count assigned five Repeat Display "Blast off is soon!" Decrement count Until count < one
- 决策符号
- 流程图中用于提出问题和做出决策的菱形。
- 流程线
- 连接各个流程图符号的线(有时带箭头)。
- 流程图
- 一种编程设计工具,它使用图形元素来直观地描述函数中逻辑的流程。
- 输入/输出符号
- 流程图中用于输入/输出交互的平行四边形。
- 处理符号
- 流程图中用于正常流程(如赋值)的矩形。