Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >标准程序流程图的符号及使用约定

标准程序流程图的符号及使用约定

作者头像
葆宁
发布于 2022-01-06 02:58:09
发布于 2022-01-06 02:58:09
3.3K0
举报
文章被收录于专栏:FREE SOLOFREE SOLO

一、引言 程序流程图(Progran flowchart)作为一种算法表达工具,早已为工国计算机工作者和广大计算机用户十分熟悉和普通使用.然而它的一个明显缺点在于缺乏统一的规范化符号表示和严格的使用规则.最近,国家标准局批准的国家标准(GB1525-89)<<信息处理–数据流程图,程序流程图,系统流程图,程序网络图和系统资源图的文件编制符号及约定>>为我们推荐了一套标准化符号和使用约定.由于该标准是与国际标准化组织公布的标准ISO5807–85 Information processing–Documentation symbols and comventions for data,program and system flowcharts,program network charts and system resources charts是一致的,这里将其中程序流程图部分摘录出来,并做了一些解释,供读者参考. 根据这一标准画出的程序流程图我们称为标准流程图.

二、符号 程序流程图表示了程序的操作顺序.它应包括: (1)指明实际处理操作的处理符号,包括根据逻辑条件确定要执行的路径的符号. (2)指明控制流的流线符号. (3)便于读写程序流程图的特殊符号. 以下给出标准流程图所用的符号及其简要说明,请参看图1.

1.数据---- 平行四边形表示数据,其中可注明数据名,来源,用途或其它的文字说明.此符号并不限定数据的媒体. 2.处理---- 矩形表示各种处理功能.例如,执行一个或一组特定的操作,从而使信息的值,信息形世或所在位置发生变化,或是确定对某一流向的选择.矩形内可注明处理名或其简工功能. 3.特定处理---- 带有双纵边线的矩形表示已命名的特定处理.该处理为在另外地方已得到详细说明的一个操作或一组操作,便如子例行程序,模块.矩形内可注明特定处理名或其简要功能. 4.准备---- 六边形符号表示准备.它表示修改一条指令或一组指令以影响随后的活动.例如,设置开关,修改变址寄存器,初始化例行程序. 5.判断----- 菱形表示判断或开关.菱形内可注明判断的条件.它只有一个入口,但可以有若干个可供选择的出口,在对符号内定义折条件求值后,有一个且仅有一个出口被激活.求值结果可在表示出口路径的流线附近写出. 6.循环界限---- 循环界限为去上角矩形表示年界限和去下角矩形的下界限构成,分别表示循环的开始和循环的结束.

一对符号内应注明同一循环标识符.可根据检验终止循环条件在循环的开始还是在循环的末尾,将其条件分别在上界限符内注明(如:当A>B)或在下界限符内注明(如:直到C<D).图2给出了当终止条件成立时进入循环和直到终止条件成立退出循环的两种不同的表示.

7.连接符---- 圆表示连接符,用以表明转向流程图的它处,或从流程图它处转入.它是流线的断点.在图内注明某一标识符,表明该流线将在具有相同标识符的另一连接符处继续下去(参看以下关于连接符使用的约定). 8.端点符---- 扁圆形表示转向外部环境或从外部环境转入的端点符.例如,程序流程的起始或结束,数据的外部使用起点或终点. 9.注解符---- 注解符由纵边线和虚线构成,用以标识注解的内容.虚线须连接到被注解的符号或符号组合上.注解的正文应靠近纵边线.请参看图3给出的注解符使用示例.

10.流线 ----- 直线表示控制流的流线.关于流线上表示流向的箭头,其使用方法见后面的约定. 11.虚线 ---- 虚线用于表明被注解的范围或连接被注解部分与注解正文,也参看图3. 12.省略符 ---- 若流程图中有些部分无需给出符号的具体形式和数量,可用三点构成的省略符.省略符应夹在流线符号之中或流线符号之间 ,参看图4.

13.并行方式 ---- 一对平行线表示同步进行两个或两个以上并行方式的操作.并行方式的示例如图5,图中在处理A完成后才能进行处理C,D和E;同样,处理F要等处理B,C,D完成以后进行.但处理C可以处理D开始和(或)结束前开始和(或)结束.

三、使用约定

关于流程图符号的使用约定,简要地说明以下几点: 1.图的布局 流程图中所用的符号应该均心地分布,连线保持合理的长度,并尽量少使用长线. 2.符号的形状 流程图中多数符号内的空白供标注说明性文字.使用各种符号应注意符号的外形和各符号大小的统一,避免使符号变形或各符号大小比例不一. 3.符号内的说明文字 应使符号内的说明文字尽可能简明.通常按从左向右和从上向下方式书写,并与流向无关.如果说明文字较多,符号内写不完,可使用注解符.若注解符干扰或影响到图形的流程,应将正文写在另外一页上,并注明引用符号. 4.符号标识符 为符号规定标识符是为了便于其它文件引用该符号.便如,程序清单中引用到流程图中的特定符号.符号标识符一般写在符号的左上角,参看图6(a).

5.符号描述符 为便于进一步理解符号的功能,可标注符号描述符.通常描述符写在符号的右上角,如图6(b)所示. 6.详细表示 在处理符号或数据符号中画一横线,表明该符号在同一文件集中的其它地言有更为详细的表示.横线在符号内靠近项端,详细表示的标识符写在符号内横线之上,见图7(a).端点符用作详细表示的开始符号和结束符号,在此符号中应给出加横线符号中的标识符,见图7(b).

7.流线 (1)标准流向与箭头的使用 流线的标准流向是从左到右和从上到下.沿标准流向的流线可不用箭头指示流向,但沿非标准流向的流线应用箭头指示充向. (2)流线的交叉 应当尽量避免流线的交叉.即使出现流线的交叉,交叉的流线之间也没有任何逻辑关系,并不对流向产生任何影响,如图8(a)所示. (3)流线的汇集 两条或多条进入线可以汇集成一条输出线,此时各连接点应要互错工以提高清晰度,并用箭头表示流向,如图8(b)所示.

(4)符号流线进出 一般情况下,流线应从符号的左边或项端进入,并从右边或底端离开.其进出点均应对准符号的中心. (5)连接符 为避免出现流线交叉和使用长线,或某个流程图能在另一页上延续,可用连接符将流线截断.截断始端的连接符称为出口连接符,载断末端的连接符称为入口连接符.两连接符中用同一标识符. 换页截断可用与连接符相连的注解符表示,如图9所示.

8.多出口判断的两种表示方法 (1)直接从判断符号引出多条流线,如图10(a)所示. (2)从判断符号引聘条流线,再从它引出多条流线,如图10(b)所示.

多出口判断的每个出口都应标有相应的条件值,用以反映它所引出的逻辑路径,如图11所示.

四、 示例

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/12/12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如何绘制符合规范的流程图表_流程图画法规范
流程图可以简单地描述一个过程,是对过程、算法、流程的一种图像表示,在技术设计、交流及商业简报等领域有广泛的应用。流程图可分为:数据流程图和作业流程图。
全栈程序员站长
2022/09/20
4.1K0
如何绘制符合规范的流程图表_流程图画法规范
关于写作那些事之快速上手Mermaid流程图
本文主要介绍了如何快速上手 Mermaid 流程图,不用贴图上传也不用拖拉点拽绘制,基于源码实时渲染流程图,操作简单易上手,广泛被集成于主流编辑器,包括 markdown 写作环境.
雪之梦技术驿站
2020/05/07
3.6K0
关于写作那些事之快速上手Mermaid流程图
Markdown的时序图、流程图、和甘特图+Hexo的相关配置
本贴在手机端因为mermaid插件的问题显示会超出屏幕,以后在想办法解决,目前建议使用电脑浏览
impressionyang
2020/08/27
2.5K0
使用 markdown 画流程图、时序图
在日常工作中,难免会画一些流程图、时序图。之前都是选择使用在线的画图网站,画完然后截图插入到文档。我个人用的比较多的主要是 腾讯文档 。
Mervyn
2021/12/08
2.8K0
使用 markdown 画流程图、时序图
手把手教你画流程图
1)用于和非研发部门交流: 决定人员都做什么工作?描述公司的核心业务。例如用户下单后,就涉及到物流部门进行发货,系统进行开发票等工作。
matinal
2020/11/27
2.2K0
手把手教你画流程图
java流程图平行四边形_编程技巧之流程图「建议收藏」
我们写的程序都是有逻辑顺序的,即是有流程的,流程图的作用则是对这种逻辑顺序的一种描述,是对解决问题的方法、思路或者算法的图形化的展示。
全栈程序员站长
2022/07/31
1.3K0
java流程图平行四边形_编程技巧之流程图「建议收藏」
高效工作流:用Mermaid绘制你的专属流程图;如何在Vue3中导入mermaid绘制流程图
如果您希望直接访问Vue3导入mermaid的代码,可以直接访问:三、Vue3中如何引入mermaid
watermelo37
2025/01/22
5840
高效工作流:用Mermaid绘制你的专属流程图;如何在Vue3中导入mermaid绘制流程图
使用LaTeX的TikZ宏包绘制流程图
类似于css的思想,这个其实就是先定义一下样式然后调用,调用的时候也可以修改,大多数参数也能猜(确信
gyro永不抽风
2021/05/21
4.7K0
流程图之美:手把手教你设计一个流程图
流程图是一种图形化工具,主要用于表示完成一项任务的流程、工作流或具体方法。它通过箭头连接各种符号来展示流程步骤,并且通常从一个明确的起始点出发,按照一定的顺序和路径进行展开。今天小编就以葡萄城公司的纯前端表格控件——SpreadJS为例,为大家介绍如何设计一个流程图。
用户10920694
2024/02/02
2020
流程图之美:手把手教你设计一个流程图
UML 教程
UML 从来源中使用相当多的概念。我们将之定义于统一建模语言术语汇表。下面仅列代表性的概念。
静默虚空
2019/05/25
3.4K0
流程图 & 时序图绘制小 tips
在日常工作中,无论是产品经理写 PRD 或是开发、测试同学写技术方案、整理业务文档等场景都会用到诸如流程图、时序图、用例图、泳道图等形式的图来辅助阅读者理解。相信平时工作中有画图需要的读者都有这样的感受:有些图制作过程非常简单但逻辑清晰又不失美观,而有些图费时费力制作繁琐,但效果却不是特别惊艳,这其中的底层逻辑尤为关键,毕竟作图也是一门艺术。本文将会以直播商品讲解业务场景出发,给大家分享一些画图小知识。
得物技术
2023/08/29
2.9K0
流程图 & 时序图绘制小 tips
UML–活动图详解
活动图是状态机的一个特殊例子,它强调计算过程中的顺序和并发步骤。活动图所有或多数状态都是活动状态或动作状态,所有或大部分的转换都由原状态中完成的活动触发。
全栈程序员站长
2022/08/12
6.2K0
UML–活动图详解
软件工程期末考试复习(五) 设计问题过程设计的工具程序复杂程度的定量度量
1、程序流程图又称为程序框图,它是使用最广泛的描述过程设计的方法。程序流程图中使用的符号(a) 选择(分支); (b) 注释; (c) 预先定义的处理; (d) 多分支; (e) 开始或停止; (f) 准备; (g) 循环上界限; (h) 循环下界限; (i) 虚线; (j) 省略符; (k) 并行方式; (l) 处理; (m) 输入输出; (n) 连接; (o) 换页连接; (p) 控制流
用户2417870
2019/09/18
1.1K0
软件工程期末考试复习(五)

        设计问题过程设计的工具程序复杂程度的定量度量
java流程图平行四边形_流程图图形标准含义[通俗易懂]
作用:一般用作要执行的处理(process),在程序流程图中做执行框。在Axure中如果是画页面框架图,那么也可以指代一个页面。你可把页面和执行命令放在同一个流程中做说明,这个时候将两类不同的矩形做色彩区别,然后做说明就好了。
全栈程序员站长
2022/07/25
2.4K0
java流程图平行四边形_流程图图形标准含义[通俗易懂]
如何看懂常用原理图符号、如何阅读原理图
原理图是我们设计,构建和排除电路故障的地图。了解如何阅读和遵循原理图是任何电子工程师的重要技能。
不脱发的程序猿
2021/01/20
4.1K0
流程图设计入门指南 —— 以 Draw.io 为例
直接按保存, 会保存一个新的 xml 文件(当然, 这也间接实现了版本控制), 但是每次都要弹出窗口很麻烦 点击 File->Saveas... 选择 Browser , 浏览器便会实时保存记录,注意不要在无痕模式使用,否则误关闭浏览器也无法找回。
benny
2019/12/12
17.9K0
流程图设计入门指南 —— 以 Draw.io 为例
【愚公系列】软考高级-架构设计师 075-业务流程设计和分类
业务流程设计(Business Process Design, BPD)是指对组织中的各项活动和操作进行系统化的分析、规划和优化,以提高效率、降低成本、提升质量和增强客户满意度的过程。业务流程设计的核心目的是通过重新思考和重新设计企业内部的工作流程和结构,使其更加高效、灵活和适应变化的市场需求。
愚公搬代码
2024/07/29
2190
业务流程图绘制分享
流程:是指特定主体为了满足特定需求而进行的有特定逻辑关系的一系列操作过程,流程是自然而然就存在的。但是它可以不规范,可以不固定,可以充满问题。所以就会造成看似没有流程。
公爵
2022/09/28
9080
业务流程图绘制分享
流程图的画法说明和部分详解
最近项目开发,公司部分人走掉了。3、4月份求职高峰期。找来的新人,由我带领,讲解业务相当麻烦,而且还需要每个人都讲解一遍。因此我就结合现有的功能画了流程图和序列图。我这里就先讲解流程图了。流程图:使用图形表示算法的思路是一种极好的方法,因为千言万语不如一张图。流程图在汇编语言和早期的BASIC语言环境中得到应用。相关的还有一种PAD图,对PASCAL或C语言都极适用。工具使用的visio 2007,由于太大了,这里就不做上传了。
业余草
2019/01/21
1.9K0
流程图的画法说明和部分详解
3 C语言 流程控制 循环 跳转
前面的章节一直在介绍C语言的基本语法知识,然而仅仅依靠这些语法知识还不能编写出完整的程序。在程序中,通常需要加入业务逻辑,并对程序的流程进行控制。本章将重点讲解C语言中最基本的三种流程控制语句。
py3study
2020/01/08
2.1K0
3 C语言 流程控制 循环 跳转
推荐阅读
相关推荐
如何绘制符合规范的流程图表_流程图画法规范
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档