下面是一个计算机程序的操作说明:
①初始值x=1,y=1,z=0,n=0;
②n=n+1(将当前n+1的值赋予新的n);
③x=x+2(将当前x+2的值赋予新的x);
④y=2y(将当前2y的值赋予新的y);
⑤z=z+xy(将当前z+xy的值赋予新的z);
⑥如果z>7000,则执行语句⑦,否则回到语句②继续进行;
⑦打印n,z;
⑧程序终止.
请写出语句⑦打印的数值,并写出计算过程.
分析:先读懂操作过程,得出运算规律,根据其中的操作过程作出计算,得出所求的值.
解答:解:语句⑦打印出的数值为7682(4分)
设n=i时,x,y,z的值分别为x
i,y
i,z
i,依题意得:x
0=1,x
n=x
n-1+2,
∴x
n是等差数列,且x
n=2n+1y
0=1,y
n=2y
n-1,∴y
n是等比数列,且y
n=2
n∴z
n=x
1y
1+x
2y
2++x
ny
n=3•2+5•2
2++(2n+1)2
n(8分)
∴2z
n=3•2
2+5•2
3++(2n+1)2
n+1以上两式相减得:-z
n=6+2(2
2+2
3++2
n)-(2n+1)2
n+1∴z
n=(2n+1)2
n+1-2
n+2+2=(2n-1)2
n+1+2(10分)
依题意,程序终止时:
即
| (2n-1)2n+1+2≥7000 | (2n-3)2n+2≤7000 |
| |
可求得n=8,z=7682(12分)
点评:本题考查算法的概念,解题关键是读懂算法语言,理解其算法结构,能根据算法中的运算规律进行正确计算,算出所求的结果.