for循环强化练习题
智亦坤泽
国王与麦子
题目描述:传说古代印度有个喜欢下棋的国王叫舍罕,而幸相达依尔是个聪明的大臣,发明了国际象棋。国王玩得爱不惜手,决定奖赏宰相。达依尔说:性下,我别无他求,请你在这张棋盘的第一个格子里赏我一粒麦子在第2格子里赏我2粒麦子,在第3个格子里赏我4粒麦子:在第4八格子里赏我8粒麦子.....依此类推直到64个格子,按这张棋盘上各格应赏的麦子全赏给我吧。国王听了,觉得达依尔的要求并不高,说道: 你能如愿以偿的。然而,国王却不知道这个数字是多么巨大啊!你能帮助国王算算第n个格子的麦子数量吗?
输入描述:
输入正整数n(n<60)
输入数据1: 5
输入数据2:40
输入数据3:20
输出描述:
输出第n个格子的表了数量,注意不能以科学记数法表示
输出数据1: 16
输出数据2: 549755813888
输出数据3: 524288
#include <iostream>
using namespace std;
int main()
{
long long n,a=1;
cin>>n;
for(int i=1;i<=n;i++){
a*=2;
}
cout<<a/2;
return 0;
}