首页 理论教育 设计循环结构程序-算法设计要点

设计循环结构程序-算法设计要点

时间:2023-11-23 理论教育 版权反馈
【摘要】:1)算法设计要点根据题意,先使f1=1,f2=1;生成数列的第1个和第2个数。2)参考源程序程序运行结果如下:输出10~100之间的全部素数。再用一层循环结构,在循环体内用上面的算法逐个判断10~100之间的每一个数是否为素数,若是,则输出。2)参考源程序程序运行结果如下:思考题:为提高程序运行速度,程序是否还可以优化?用公式求π的近似值,直到最后一项的绝对值小于10-6为止。1)算法设计要点用累加求和的方法计算多项式之和。

设计循环结构程序-算法设计要点

【例5.13】求Fibonacci数列的前20个数。该数列的生成方法为:F1=1,F2=1,Fn=Fn-1+Fn-2(n>=3),即从第3个数开始,每个数等于前两个数之和。

1)算法设计要点

(1)根据题意,先使f1=1,f2=1;生成数列的第1个和第2个数。

(2)通过f1=f1+f2,f2=f2+f1;分别生成数列的第3个和第4个数。重复(2),每次生成两个数,依次可生成数列的前20个数。

(3)由于后产生的数要覆盖前面的数(用了相同的变量),因此,每产生两个数之后,先输出,然后再产生后两个数。2)参考源程序

程序运行结果如下:

【例5.14】输出10~100之间的全部素数

1)算法设计要点

(1)所谓素数n,是指除1和n之外,不能被2~(n-1)之间的任何整数整除的数。判断某数n是否为素数的算法:用2~(n-1)之间的每一个数去整除n(用循环结构),如果都不能被整除,则表示该数是一个素数;如果有任意一个数能整除,则该数就不是素数。

(2)再用一层循环结构,在循环体内用上面的算法逐个判断10~100之间的每一个数是否为素数,若是,则输出。2)参考源程序

程序运行结果如下:(www.xing528.com)

思考题:为提高程序运行速度,程序是否还可以优化?(提示:从减少循环次数的角度来考虑)

【例5.15】用公式

img求π的近似值,直到最后一项的绝对值小于10-6为止。

1)算法设计要点

(1)用累加求和的方法计算多项式之和。

(2)多项式的分母为前一项的分母加2,其符号为前一项的符号乘以-1实现交替变化。

2)参考源程序

程序运行结果如下:

pi=3.14159065

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈