结果会很大,整型无法存储。这时候需要我们把每一位都存入进数组之中,模拟整数
模拟一下乘法
#include <iostream>
#include <algorithm>
using namespace std;
int a[10000];
int main(){
int size=1,i,n;
a[0]=1;
cin >>n;
//最后加上while()循环,执行n次乘以2的操作
while(n--){
int t=0;//要更新这个t,每次执行完乘以2的一次计算后,有可能涉及进位size增加的问题。
///模拟乘以2的计算 ,从个位数开始算
for(i=0;i<size;i++){
t+=a[i]*2;//进位数+本身
a[i]=t%10;//取余数,就是个位数。就是看看是否要进位
t/=10;//求出要进位的数是多少
}
if(t){ //考虑结束时还会进位的问题
a[size++]=t;
}
///
}
for(i=size-1;i>=0;i--){
cout <<a[i];
}
return 0;
}