论文部分内容阅读
点评:从上面的程序框图可以看出,设计流程图要分步进行,把一个大的流程图分割成几个小部分,按照三个基本结构,即顺序结构、条件结构、循环结构来局部安排,然后把流程图进行整合.在框图画完以后,要进行验证,按照设计的流程图分析是否能够实现所求数的累加,分析条件是否加到131,就结束循环,所以我们要注意初始值的设置、循环条件的确定以及循环体内语句的先后顺序,三者要有机地结合起来.在这之间最重要的是循环条件,它决定着循环的次数.
思考:怎样才能确定循环条件呢?
在典例1中,循环条件为什么不是“i<131?”呢?主要的原因是如果是“i<131?”,那么循环条件就会少加一次,131就加不上了.其实对于循环条件的确定,最“原始”的方法就是自己按照流程顺序执行一遍.但这显然是比较麻烦的,在实际操作中,我们只需看前2至3次循环以及最后一次循环即可.通过前2至3次循环体的执行,可以验证是不是从第一个数开始加的,是不是能够实现其中数的规律.根据循环体内语句的顺序,所以最后一次执行循环体时i的值应为131,执行完循环体后i的值变为133,这时就应该退出循环,不能再加了.因此对于典例1而言,循环条件应为“i≤131?”或“i<133?”.
例2程序如右:该程序输出的结果是.
分析:120这是一个累乘,相乘的数由i←2与i←i+1产生,当i≤5时,得到的值是2,3,4,5,由t←t×i累乘,得到t=2×3×4×5=120.
例3某纺织厂1997年的生产总值为300万元,如果年生产增产率为5%,计算最早在哪一年生产总值超过400万元.使设计程序框图实现解决此问题的算法,并写出对应的伪代码.
分析:从1997年底开始,经过x年后生产总值为300(1+5%)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止.
解:程序框图为:
思考:怎样才能确定循环条件呢?
在典例1中,循环条件为什么不是“i<131?”呢?主要的原因是如果是“i<131?”,那么循环条件就会少加一次,131就加不上了.其实对于循环条件的确定,最“原始”的方法就是自己按照流程顺序执行一遍.但这显然是比较麻烦的,在实际操作中,我们只需看前2至3次循环以及最后一次循环即可.通过前2至3次循环体的执行,可以验证是不是从第一个数开始加的,是不是能够实现其中数的规律.根据循环体内语句的顺序,所以最后一次执行循环体时i的值应为131,执行完循环体后i的值变为133,这时就应该退出循环,不能再加了.因此对于典例1而言,循环条件应为“i≤131?”或“i<133?”.
例2程序如右:该程序输出的结果是.
分析:120这是一个累乘,相乘的数由i←2与i←i+1产生,当i≤5时,得到的值是2,3,4,5,由t←t×i累乘,得到t=2×3×4×5=120.
例3某纺织厂1997年的生产总值为300万元,如果年生产增产率为5%,计算最早在哪一年生产总值超过400万元.使设计程序框图实现解决此问题的算法,并写出对应的伪代码.
分析:从1997年底开始,经过x年后生产总值为300(1+5%)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止.
解:程序框图为: