国王的许诺
相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜欢象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着8×8共64格的象棋盘说:陛下,请您赏给我一些麦子吧,就在棋盘的第1个格子中放1粒,第2格中放2粒,第3格中放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上的64个格子,我就感恩不尽了。舍罕王让人扛来一袋麦子,他要兑现他的许诺。请问:国王能兑现他的许诺吗?试编程计算舍罕王共要多少麦子赏赐他的宰相,这些麦子合多少立方米(已知1立方米麦子约1.42e8粒)?
注:(1)不能使用指针、结构体、共用体、文件、goto、枚举类型进行编程。
(2)用标准C语言编程,所有变量必须在第一条可执行语句前定义。
(3)输入输出格式要和以下给定格式完全一致。
**输入格式:无
**输出格式:
“sum = %e\n”
“volum = %e\n”
%e表示double类型
#include<stdio.h> #include<stdlib.h> double A(int n); int main() { double n=0,m; int i; for(i=0;i<64;i++) { m=A(i); n+=m; } printf("sum = %e\n",n); printf("volum = %e\n",n/(1.42e8)); return 0; } double A(int n) { int i; double m=1; if(n!=0) { for(i=1;i<=n;i++) { m*=2; } } return m; }