问题 解答题

下面是一个计算机程序的操作说明:

①初始值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的值分别为xi,yi,zi,依题意得:x0=1,xn=xn-1+2,

∴xn是等差数列,且xn=2n+1y0=1,yn=2yn-1,∴yn是等比数列,且yn=2n

∴zn=x1y1+x2y2++xnyn=3•2+5•22++(2n+1)2n(8分)

∴2zn=3•22+5•23++(2n+1)2n+1以上两式相减得:-zn=6+2(22+23++2n)-(2n+1)2n+1

∴zn=(2n+1)2n+1-2n+2+2=(2n-1)2n+1+2(10分)

依题意,程序终止时:

zn≥7000
zn-1≤7000
(2n-1)2n+1+2≥7000
(2n-3)2n+2≤7000
可求得n=8,z=7682(12分)

选择题
单项选择题