作者:莫启飞
环境:vs2019
时间:2021.10.9
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字,为2。 例如,n=5时=2+22+222+2222+22222,n由键盘输入。
输入
n
输出
Sn的值
样例输入复制
5
样例输出复制
24690
#include<iostream>
using namespace std;
int main() {
int n;
int sum1 = 0;
int sum = 0;
int a = 2;
cin >> n;
while (n--) {
sum1 = sum1 * 10 + a;
sum += sum1;
}
cout << sum << endl;
return 0;
}
bug及心得:一开始,看出题目了,看成了,Sn = 2+2*2+2*2*2......,于是写成了
#include<iostream>
using namespace std;
int main() {
int a[100];
int n;
int sn = 0;
int sn1 = 0;
int sn2 = 0;
a[1] = 2; a[2] = 2* 2;
sn = a[1] + a[2];
cin >> n;
for (int i = 3; i <= n; i++) {
a[i] = a[i - 1] * 2;
sn1 += a[i];
}
sn2 = sn + sn1;
cout << sn2 << endl;
return 0;