Pascal 在国际象棋上放米粒,第一格放1粒,第二格放2粒,第三格放4粒……,以此类推,计算棋盘公放多少粒米

用循环和累加
2025-03-09 21:24:28
推荐回答(5个)
回答1:

高精度乘法和加法
结果是2^64-1
program jj;
var la,lb,lc,x,i,j : longint;
a,b,c : array [1..1000] of longint;
n,m : string;
begin
str(maxlongint,n);str(maxlongint,m)
la := length(n); lb := length(m);
for i := 1 to la do a[la-i+1] := ord(n[i])-48;
for i := 1 to lb do b[lb-i+1] := ord(m[i])-48;
for i := 1 to la do
begin

x : =0;

for j := 1 to lb do
begin
x := a[i]*b[j]+x div 10+c[i+j-1];
c[i+j-1] := x mod 10;
end;
c[i+j] := x div 10;
end;
lc := i+j;
while (c[lc]=0) and (lc>1) do lc := lc-1;
for i := lc downto 2 do
write(c[i]);
writeln(5);
end.

回答2:

设x=1+2+2′2+…+2′63 ①.等式两边同时乘以2,得2x=2+2′2+2′3+…+2′64 ②②-①,得x=2′64-1.答:国王输给阿基米德的米粒数为2′64-1

回答3:

解 第64个格子,应该底数是2,指数63,所以为263;
(1)设x=1+2+22+…+263 ①.等式两边同时乘以2,得2x=2+22+23+…+264 ②②-①,得x=264-1.

回答4:

这个很明显是这么算的

1+2+2^2+2^3+……2^63

2^64-1

回答5:

10的19次方