0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

编程基础之流程图画法及练习

Goodtimes 作者:电子发烧友网 2019-01-31 15:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

对于“程序设计”的工作,许多初学者的理解就是“写代码”。同样,新手们苦恼的问题是,他们只会“写代码”。当接到一个新的任务,不少人总是在第一时间就爬到键盘上去敲代码。敲着敲着,就把自己绕糊涂了。头晕脑胀地坚持下来,程序能运行,阿弥托佛,赶紧撤。这样做出的程序,并不可靠。

在程序设计中,最重要的不是写程序,而是设计。就像建筑、机械等行业的要画设计图、施工图,程序设计的思路也有必要用图的形式画出来。画图的过程就是思考的过程,由于其直观性,画图的过程本身又促进了思考。在软件工程中,已经发展出了很多种实用的图,为软件产品设计的质量提供保证。这部分练习帮助程序设计者掌握和实践的“程序流程图”。

一、什么是程序流程图

“程序流程图”常简称为“流程图”,是一种传统的算法表示法,程序流程图是人们对解决问题的方法、思路或算法的一种描述。它利用图形化的符号框来代表各种不同性质的操作,并用流程线来连接这些操作。在程序的设计(在编码之前)阶段,通过画流程图,可以帮助我们理清程序思路。下图是一个简单的流程图,描述求两个数的最大公约数的算法(辗转相除法)。

画流程图是每个程序员的基本功。流程图有其规范,这是用于技术人员之间交流的需要,并不是想怎么画就怎么画。流程图中常用的符号见右图,在前述求最大公约数的流程图中找出对应的部分。

二、三种控制结构的流程图表示

这部分不再写文字,各种程序设计的教材中都会写一些,至少在讲各种控制结构时,总时要讲的。请参考自己手头能找到的教材,认真品味。

我们直接提示若干任务,画一画,就会了。

三、练习题目(各部分分别至少选两个画一画,注意用一张质量好一些纸,书写整齐,确保越画越高兴)

1、热身

(1)将英尺转换为米

(2)输入两个点的坐标,求两点之间的距离并输出

2、分支程序

(1)描述一下今晚的计划:如果下雪,校园内玩雪;否则,在103上机(怀念)

(2)丢硬币决定今晚:正面,K歌;反面:逛街;立起来,学C++

(3)求函数值:

(4)输入一元二次方程ax^2+bx+c=0的各项系数,并根据各系数的值的情况,分别进行求解(考虑对系数的各种可能太复杂时,给自己降低些难度,先从不考虑系统直接求解开始)

(5)输入个人月收入总额,计算出他本月应缴税款和税后收入(税率等参考第9周任务)

3、循环结构

(1)求1+2+3+.。.+100(三种循环结构都画一画)

(2)输出1/3-3/5+5/7-7/9…+19/21的结果

(3)一个数如果恰好等于它的因子之和,这个数就称为“完数”。找出1000内的所有完数。

(4)输出1000以内的所有回文数

(5)鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,如何买?

4、复杂结构的程序

在解决问题中,利用函数可以让我们利用更“有序”的思维去想问题,“自顶向下,逐步求精”,真理。例:下面的流程图用于输出星号图,体现的是这种思维,右边的图可以嵌入到左边中,替代“输出第i行”的框子,也可以指导我们专门编成一个函数。

任务:

(1)输出10000以内的所有回文素数。将判断回文和判断素数分别单独画,对应将这两个功能用函数实现的方法。

(2)画出银行系统的流程图(各具体业务点到为止,不必全画)

注:在传统教学中,未学写代码,先学画流程。以前的实践中,感觉效果不好。控制结构为何物都晕,如何能画出来。有一定编程体验后再画,是改革的思路。这是编程的一项基本功,务必掌握!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    90

    文章

    3708

    浏览量

    96777
  • 流程图
    +关注

    关注

    2

    文章

    63

    浏览量

    19228
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NVMe高速传输之摆脱XDMA设计28: TLP 事务处 理程序的执行流程

    程序的执行流程图当对应任务接口的事务缓存中存在未处理事务时, 处理程序从缓存中获取事务。首先检查事务类型, 当事务类型为 Cpl 响应类型事务时, 如果当前程序对应接收端口号为 0, 即接收端口为唯一
    发表于 09-21 08:51

    基于FPGA实现FOC算法之Clark模块设计

    今天给大家讲解的是FOC流程中的Clark变换,在流程图中的位置如下图所示。
    的头像 发表于 08-27 09:21 1366次阅读
    基于FPGA实现FOC算法之Clark模块设计

    从3小时到3分钟:EdgeCAM 如何重构数控编程流程

    、核心特点** 用户友好性 界面直观,操作逻辑贴近传统CAD/CAM流程,适合新手快速上手。 提供“向导式”编程模板,简化复杂任务的设置步骤。 自动化程度高 通过“基于知识的加工
    发表于 06-27 19:53

    【「零基础开发AI Agent」阅读体验】操作实战,开发一个编程助手智能体

    应用商店或其他分发渠道获取 2.直接输入智能体的网址 三.丰富智能体 添加插件,此处添加两个思维导图和流程图的插件: 添加知识库: 再重新体验智能体: 可以看到,命中了流程图的意图. 四
    发表于 05-27 11:16

    MCU+CPLD 联合编程(概念及流程

    编程(verilog语言)有一定的基础。 另外,对AHB总线也需要有一定的了解。 这个章节分为两部分: 第一部分,展示联合编程中各种概念和操作流程; 第二部分,从具体案例出发,由浅到深来描述各种常用
    发表于 05-26 16:22

    PID管道仪表流程图识读方法【推荐下载】

    管道仪表流程图(P&ID)又称施工流程图或工艺安装流程图。它是在方案流程图的基础上绘制而成的,是自动化工程设计的依据,亦可供施工安装和生产操作时参考。 下面是部分截
    发表于 05-22 17:30

    LED产品SMT生产流程防硫注意事项

    ,也有可能遇到大量含硫的材料。LED应用产品SMT生产流程图MCPCB板材进行的成分分析鉴于硫在高温环境下比较活跃,金鉴实验室建议在SMT作业时,可在表面贴装前预先将
    的头像 发表于 05-15 16:07 635次阅读
    LED产品SMT生产<b class='flag-5'>流程</b>防硫注意事项

    PLC常见的故障和因素及5大排除流程图

    供五大排除流程图,帮助工程师快速定位和解决问题。 一、PLC常见故障类型及成因分析 1. 电源故障 ● 现象:PLC无法启动、指示灯不亮、模块异常断电。 ● 原因: • 输入电压不稳定(如浪涌、欠压) • 电源模块老化或损坏 • 接线端子松动或短路
    的头像 发表于 05-11 17:29 3296次阅读
    PLC常见的故障和因素及5大排除<b class='flag-5'>流程图</b>

    【「零基础开发AI Agent」阅读体验】总体预览及入门篇

    ,相关术语有计算机编程,数据库,向量数据库等概念,然后是大模型的相关概念,比如自然语言处理、提示词工程、思维链和思维树以及ReAct、多模态等内容。 然后是业务流程对AiAgent的开发及应用,讲解
    发表于 04-20 21:53

    开关电源反激和正激的区分

    开关电源反激和正激的区分 一、电感: 电感简单的说就是导电的螺旋线圈。电感种类比较多,有插脚的贴片的等等。 如图 1: 图 1 L1是有芯电感 L2是无芯电感的原理图画法,这里是讲解反激正激而
    发表于 04-03 13:49

    实时时钟模块选择指南和比较表

    爱普生提供内置 32.768 kHz 晶体单元的多种实时时钟模块。除了单纯的计时功能外,还有即使在高温环境下也能保持准确计时的产品,以及配备其他各种功能的产品。您可以使用下面的流程图和产品比较表来
    发表于 03-14 10:28 0次下载

    在HMI上如何显示PLC代码流程呢?

    流程图编程。 2. 设置显示参数:在打开FB功能块后,在编辑菜单中勾选“从HMI显示/访问内部参数”选项。这个设置确保流程信息能够从HMI上正确显示。 二、在HMI中添加控件 1. 新建画面:在HMI中新建一个画面,作为显示P
    的头像 发表于 03-03 12:09 1522次阅读
    在HMI上如何显示PLC代码<b class='flag-5'>流程</b>呢?

    数控加工工艺流程详解

    数控加工工艺流程是一个复杂而精细的过程,它涉及多个关键步骤,以下是该流程的介绍: 一、工艺分析 图纸分析 :详细分析零件图纸,明确加工对象的材料、形状、尺寸和技术要求。 工艺确定 :根据图纸分析
    的头像 发表于 02-14 17:01 3040次阅读

    做ADS解码专用 实践ADS1605

    实践ADS1605 因为设计要做ADS解码专用,所以找来找去用到了ADS1605这个芯片,并口设计,信号可以识别小信号的。 因为买的是专业板子,所以上面都集成好了。 板子流程图。 用到解码流程图 效果还不错,就是数据容易受到干扰的。
    发表于 01-21 07:58

    PLD设计流程的详细步骤

    PLD(Programmable Logic Device,可编程逻辑器件)设计流程是指从设计概念到最终实现的一系列步骤,用于创建和验证可编程逻辑器件的功能。 1. 需求分析(Requirement
    的头像 发表于 01-20 09:46 1831次阅读