为了账号安全,请及时绑定邮箱和手机立即绑定

麦粒棋盘问题?

麦粒棋盘问题?

C C++
秦寻 2018-05-14 22:11:16
相传古印度宰相达依尔,是国际象棋的发明者。有一次,国王因为他的贡献要奖励他,问他想要什么。达依尔说:“只要在国际象棋棋盘上(8×8共64格)摆上这么些麦子就行了:第一格一粒,第二格两粒,……,后面一格的麦子总是前一格麦子数的两倍,摆满整个棋盘,我就感恩不尽了。”国王一想,这还不容易,刚想答应,如果你这时在国王旁边站着,你会不会劝国王别答应,为什么,你编程计算一下大约需要多少立方小麦(1立方米约为142000000粒)?c语言求解
查看完整描述

2 回答

?
Glitterior

TA贡献27条经验 获得超8个赞

已知有这四个错误
1.long sum(int)
2.long suma = sum(x);
3.else  x = 1;
4.142E6
这个程序主要是最后的递归函数,利用后一个格子是前一个格子的2倍,且第一个格子是1这个规律

查看完整回答
反对 回复 2018-05-16
  • 秦寻
    秦寻
    #include<stdio.h> #include<math.h> main() { int n; double term,sum=0; for(n=1;n<=64;n++); { term=pow(2,n-1); sum=sum+term; } printf("sum=%e\n",sum); printf("volum=%e\n",sum/1.42e8); }
?
Glitterior

TA贡献27条经验 获得超8个赞

#include<stdio.h>
int sum(int);
int main()
{
    int x = 64;
    long sum = sum(64);
    printf("%ld\n",sum/1.42E8);
    return 0;
}
int sum(int a)
{
    long x =sum(a);
    if(a != 1)
        x =2*sum(a-1);
    else
        sum(1) =1;
    return x;
}

查看完整回答
反对 回复 2018-05-15
  • 宝慕林6622812
    宝慕林6622812
    有两个错物啊 我在编译器试过了 能把一些地方解释一下吗 // // 这样就可以的 谢谢啊 小弟才学不是太懂 啊
  • 2 回答
  • 0 关注
  • 1166 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信