顺序流程
把事情写成一步接一步、别人也能照着做的顺序。
它是什么
顺序流程就是把一件事写成步骤:先做什么,再做什么,最后怎样检查。别人照着做,也能做成同一件事。
世界里常把这种步骤叫算法,英文是 algorithm。它不是咒语,也不是心情,而是一份能执行的说明书。
厨房里的食谱就是算法:先洗菜,再下锅,最后出锅。电脑也一样——它不会猜你在想什么,只会按写下的顺序走。
名字从哪来
「算法」这个词,和一千多年前的学者花拉子米(al-Khwarizmi)有关。他写下解方程的步骤,后来欧洲人用他的名字称呼「按步骤算」。
更早的时候,人们已经在用步骤。做面包、量土地、排队伍,都要按顺序。电脑出现以后,步骤必须更清楚:每一步有动作,做完能停下。
食谱、说明书、游戏规则,都是生活里的算法。名字不同,核心一样:一步接一步,顺序不能乱。
它怎么工作
好步骤通常有三条:
- 每一步有动词,也有对象
- 前后不能随便对调
- 做完能检查有没有漏
「打开文具盒」是好步骤。「东西」不是步骤,因为它没有动作,也没有结果。
以做蛋炒饭为例:
- 淘米、煮饭
- 打蛋、热锅
- 下饭、加盐
- 盛出来
第 1 步和第 3 步不能对调。生米下锅,炒不成饭。这就是「顺序不能乱」。
算五个数的 平均数,也是流程:
- 记下五个数
- 加起来得到总数
- 用总数除以 5
- 写出平均数
- 检查除数是不是 5
每一步都留下一个能核对的结果。先加,再除,不能反过来。
检查流程时,两问就够:
- 少了哪一步会失败?
- 对调两步会不会出事?
漏了「装书包」,出门会失败。先晾衣再洗衣,顺序错了。
生活里在哪里
- 按食谱做饭、按说明书拼积木
- 图书馆借书:找书、拿到借书台、出示借书卡、登记
- 过马路:看灯、左右看、再走
- 电脑开机、保存文件、发送消息
- 解 方程:两边同减、再同除、再检查
写的时候,想象要交给一个完全不了解情况的人。他只能照着做;他做完,任务应当成功。
愿望不是步骤。「认真一点」「快点做好」没法检查;「把书包拉链拉上」可以检查。
和相近概念的差别
| 名称 | 它在管 |
|---|---|
| 顺序流程 | 先后次序 |
| 问题分解 | 把大事切成小块 |
| 规律 | 同一规则反复出现 |
| 编码 | 按规定换一种写法 |
分解管切块,流程管先后。先切开,再排顺序,两件事常常一起用。
流程里也可以有判断。「分数到 60 就及格,否则继续练」中间有选择。整体仍按顺序往下走:先读,再比,再下结论。
常见误会
误会 1:心里会做,就等于写成了流程。
别人照你的话做失败了,说明步骤还不够清楚。
误会 2:步骤可以随便对调。
有的步能对调,有的不能。洗衣和晾衣服不能对调;先拿筷子还是先拿碗,有时可以。要问:对调以后还能成功吗?
误会 3:把愿望当成步骤。
「表现好一点」没有可检查的结果。
误会 4:算法一定要电脑。
食谱、借书、排队,都是算法。电脑只是特别听话的执行者。
想知道更多
- 活动:CS Unplugged《不插电的计算机科学》(书和网站)。用身体和卡片玩「按步骤做」,不一定要电脑。
- 纪录片:法国片《维度:数学漫步》(Dimensions),把抽象步骤和空间看得更立体;适合和家长一起选片段看。
- 生活作业:把「从进家门到开始写作业」写成五到七步,交给家人照着做,看会不会卡住。
未登录时不会保存学习进度