C_and_CPP 板


LINE

其实不应该在这边讲,因为大部份都是常识,不是常识书上一开始也会讲。 - 1 - 流程图一般而言就是从上画到下: ███ ↓ ███ ↓ .... ↓ ███ 开始结束还会用一个圆边的block,那叫终结者(terminator, 端点) 不过这里太难画了,你知道就好。 反正早20年书上就教大家画流程图只要用这个长方格(执行步骤)和菱形(判断)。 那这有什麽好讲的呢?你都已经知道了啊 重点在下面。 - 2 - 回圈一定会有一个判断(condition), 不管先判断(pre-condition)还是後判断(post-condition),一定会有 ███ ↓ ███ ↓ ◢◣ ◥◤ 这个判断有点大,不过意思到就好。 回圈画法的重点,就是把判断後的流程画好 *判断- 合乎回圈执行的条件吗? yes: 回到回圈头 no: 往下执行 ███<─┐ ↓ │ ███ │ ↓yes │ ◢◣──┘ ◥◤ ↓no ███ ↓ .... pre-condition就反过来 *判断- 合乎回圈执行的条件吗? yes: 往下执行 no: 往前跳过整个回圈,继续执行 no ◢◣<──┐ ┌── ◥◤ │ │ ↓yes │ │ ███ │ │ ↓ │ │ ███──┘ │ └─> ███ ↓ .... 如图所示这样会需要画两条跳跃(传统上的goto),有别於post-condition的一条 因为post-condition当中,判断和「继续执行」的跳跃指令合在一起 而在pre-condition当中和判断结合的跳跃指令却是「停止执行,跳过回圈」 而「继续执行」的跳跃指令则在回圈尾 为了一致性会希望你把「继续执行」的跳跃都画在同一边 「跳过回圈」画在另一边 如果有break,因为他是离开回圈,所以也不要跟「继续执行」画在同一边 不然两条跳跃会交叉,你要画个半圆表示跳过对方 ↑ │ ╭─╮ ─┘│└─> │ 这样两条流程交叉的画法叫jog (或jump,不过组语的跳跃也是jump,会混淆) 除非图很复杂,不然最好不要画。 掌握这些原则之後多层回圈也不过就是多画几条跳跃而已 只是那几条不要互相重叠 ███<──┐ ↓ │ ███<─┐│ ↓ ││ ███ ││ ↓YES ││ ◢◣──┘│ ◥◤ │ ↓NO │ ███ │ ↓YES │ ◢◣───┘ ◥◤ ↓NO .... 因为太懒了而且要上班(开玩笑,有人在盯的),画两层回圈就好 三层的,还有混合post-和pre-condition的,就你自己画 - 3 - 注意有的时候两层回圈的开头其实没有分开来 因为方框里面大家只会写有实际执行到的叙述,不会把大括号也画一格 所以有时候多层回圈继续执行会跳回同一格 ███<─┐┐ ↓ ││ 像这样,可能好几条跳跃都跳到同一格上 - 4 - 如果你觉得线很多很烦(事实上真的是很烦),可以使用connector符号 外观是一个圈圈里面一个数字或字母,例如"㊣" (这是示意; 里面不要写正) 图上线很多的时候就这样画 .... ↓ ███ ─>㊣ 然後在上面或下面哪里 ███<─㊣ ↓ .... 数字要配合,1就接1,2就接2 他的原始意义就是接图,画到纸不够的时候接到右边最上面继续画 等於一条线,只是中间不画 所以不要有一个1接到好几个1这种情况,那应该包装为判断或switch block。 -- 从前有个马铃薯王国 有个高贵伟大的国王 有的人尊敬他 有的人畏惧他 但有个人敢看不起他不只是一条龙 嘿呵 快出动 去征服 去摆平 嘿呵 快出征 去征服那条龙 嘿呵 快出动(宰了它!轰了它!)嘿呵 快出征 去征服那条龙 :■ Potatoes and Dragons (C)Alphanim France 2004-05 :. --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.135.118.23
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1505802607.A.065.html
1F:推 Neisseria: 推一个 09/19 14:50
2F:推 wtchen: 虽然有点离本板主题,不过言之有物+板工喜欢 :) 09/19 16:58
3F:→ school4303: 板工喜欢XD 09/19 18:03
4F:推 Yshuan: 推 很用心地说明阿 09/19 20:46
5F:推 stucode: 推 还想看更多像这样的认真文章 09/19 21:10
6F:推 Lipraxde: 我记得以前我画流程图的时候老师要我把返回的箭头指到线 09/19 22:56
7F:→ Lipraxde: 上 09/19 22:56
8F:推 VictorTom: 推~~M大竟然可以用BBS画流程图....Orz 09/20 00:51
9F:推 ddtsatan: 推 09/20 01:04
※ 编辑: MOONRAKER (220.135.118.23), 09/20/2017 12:03:19
10F:→ MOONRAKER: 开玩笑我可是从北斗神拳还在连载的时候就在画流程图… 09/20 13:07
11F:→ MOONRAKER: (虎烂)(废话) 09/20 13:07
12F:推 VictorTom: 支持M大画到猎人连载完....(堆坑XD) 09/21 03:07
13F:推 zzss2003: 谢谢,解释得很清楚 09/21 11:09
14F:→ MOONRAKER: 不要阿~我不要画到56亿7000万年後阿~ 09/21 11:10
※ 编辑: MOONRAKER (220.135.118.23), 09/21/2017 11:24:03
15F:推 Lee1027: 推一个 09/22 01:21
16F:推 leo80042: 09/22 04:48
※ 编辑: MOONRAKER (220.135.118.23), 09/22/2017 10:55:37
17F:→ MOONRAKER: 一直改不是因为很三八,是因为这个字型怪怪的 09/22 14:51
18F:→ MOONRAKER: Wenquanyi micro hei的符号都差半格 直线会断… :~( 09/22 14:51
19F:推 sunneo: cool 09/25 22:05







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP