自顶向下,逐步求精

自顶向下是一种逐步求精的设计程序的过程和方法。

对要完成的任务进行分解,先对最高层次中的问题进行定义、设计、编程和测试,而将其中未解决的问题作为一个子任务放到下一层次中去解决。

这样逐层、逐个地进行定义、设计、编程和测试,直到所有层次上的问题均由实用程序来解决,就能设计出具有层次结构的程序。

按自顶向下的方法设计时,设计师首先对所设计的系统要有一个全面的理解.然后从顶层开始,连续地逐层向下分解,起到系统的所有模块都小到便于掌握为止。

在你初学英语的时候,你的英语老师不可能一开始就教你某个单词的某个音标怎么去念吧?都会先告诉大家,学好英语就要会听、说、读、写,从四个方面去学,然后才会分别对各个方面进行训练,以达到学好英语的目的。

解决一个难题,往往不能够立刻想到最根本的步骤,而需要将其拆分,分解为几个子任务,逐一解决。

关于洗衣机运行程序的设计,如果采用“自顶向下,逐步求精”的方法来分析,可以是这样——
洗衣机
开电源
选择洗衣模式(标准模式、快洗模式、强洗模式、迷你洗、大物件等模式)
设置用水量
启动
洗涤(注水,电机转动,排水)
漂洗(注水,电机转动,排水)
脱水(电机转动,排水)
结束

如果用伪代码来表述该过程,即为——

Connect to the power
Choose the standard washing pattern
Start up
Wash
    Water_in
        Water_in_switch ( open )
        Water_in ( volume )
        Water_in_switch ( close )
    Motor_run
        While ( time_counter < setting_time )
            Motor_run ( left )
            Motor_run ( right )
        End while
        Motor_run ( stop )
    Water_out
        Water_out_switch ( open )
        While ( Get_water_volume ( ) > 0 )
            Water_out
        Water_out_switch ( close )
Poaching
    Water_in
    Motor_run
    Water_out
Poaching again
    Water_in
    Motor_run
    Water_out
Dehydration
    Water_out_switch ( open )
    While ( time_counter < setting_time )
        Motor_run ( left )
        Motor_run ( right )
        Water_out
    End while
    Motor_run ( close )
    Water_out_switch ( close )
Halt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值