设计一个算法,求出满足条件1×3×5×…×n>50000的最小正整数n,并画出相应的程序框图正解是:第一步,S=1 i=3第二步,如果S≤50000,执行S=S×I i=i+2 否则执行第三步第三步,i=i-2第四部,输出i我主要是不理解第三步,为什么i还要减去2呢!这步表示什么呀 什么意义呢!
问题描述:
设计一个算法,求出满足条件1×3×5×…×n>50000的最小正整数n,并画出相应的程序框图
正解是:第一步,S=1 i=3
第二步,如果S≤50000,执行S=S×I i=i+2 否则执行第三步
第三步,i=i-2
第四部,输出i
我主要是不理解第三步,为什么i还要减去2呢!这步表示什么呀 什么意义呢!
答
因为在第二步 求出的数比N大2,所以要减2.简单说就是多执行了一步i=i+2;
答
因为你输出的是n呀,你程序中最后输出i, 第2步 每次都是最后i+2,并没有参与乘法。如果转到第3步,说明i不加2 就已经实现目标了
答
原因是你的 i 每次都执行了 i++ 操作.举例:求出满足条件1×3×5×…×n>10的最小正整数n
我们知道答案应该是5.按正解
S = 1; i = 3;
if(S
答
应该是求1×3×5×…×n最大整数吧
这样的话
第二步,如果S≤50000,这里退出的时候S>50000
想要小于的话就要减去2