自顶向下,逐步求精的编程方法

来源:互联网 发布:opc软件 编辑:程序博客网 时间:2024/06/05 05:59

对于我们软件工程专业的学生来说,学习解决问题的方法和学习专业知识同样重要。自顶向下,逐步求精就是一种解决问题的好方法。
·自顶向下
自顶向下是指将问题分解为相对简单的子问题,然后再把子问 题分解为子问题,直到每个问题都足够基础。其核心本质是”分解”。
·逐步求精
逐步求精是指对象经若干步抽象(精化)处理,最后到求解域中只是比较简单的编程问题。
限于目前的水平,我只好以我们的作业题来说明这个方法~
这里写图片描述
分析问题:
我们要做到,输入1的时候给这列数加入值,输入0的时候抽取数列中的第一个值并将这个值输出。
把它拆解一下:
分成输入1和输入0两部分,其中输入0的部分要包含输出。
求精:
想到用数组来存值;用switch语句来分开输入0和输入1;抽取第一个数,可以考虑成将数列中的后一个数赋值给前一个。再看细节:没有数加入时,输入0的时候要输出”pop failed“,数加满了10个后,再输入1的时候要输出”push failed“。我们就用一个counter来计数,每输入一次,counter就加1;每抽取一个数,counter就减一。
这样,整个问题就被我们拆分成了一块块的,我们可以集中精力去解决每一块,最后就可以解决整个问题了。