题目内容
根据下面的要求,求满足1+2+3+…+n>500的最小的自然数n.
(1)画出执行该问题的程序框图;
(2)以下是解决该问题的一个程序,但有几处错误,请找出错误并予以更正.
i=1S=1n=0DO S<=500 S=S+i i=i+1 n=n+1WENDPRINT n+1END.
(1)画出执行该问题的程序框图;
(2)以下是解决该问题的一个程序,但有几处错误,请找出错误并予以更正.
i=1S=1n=0DO S<=500 S=S+i i=i+1 n=n+1WENDPRINT n+1END.
分析:(1)分析题目中的要求,发现这是一个累加型的问题,故可能用循环结构来实现,在编写算法的过程中要注意,累加的初始值为1,累加值每一次增加1,退出循环的条件是累加结果>500,即可得到流程图;
(2)直到型循环结构是直到满足条件退出循环则“DO”错误,应改成WHILE,以及输出结果为n,不是n+1,赋值S=0不是S=1.
(2)直到型循环结构是直到满足条件退出循环则“DO”错误,应改成WHILE,以及输出结果为n,不是n+1,赋值S=0不是S=1.
解答:解:(1)程序框图如左图所示.或者,如右图所示:
(2)①DO应改为WHILE;
②PRINT n+1 应改为PRINT n;
③S=1应改为S=0.
(2)①DO应改为WHILE;
②PRINT n+1 应改为PRINT n;
③S=1应改为S=0.
点评:本题主要考查了循环结构,以及利用循环语句来实现数值的累加(乘),同时考查了流程图的应用,属于中档题.
练习册系列答案
相关题目