c++求sn=a+aa+aaa+...+的值
时间: 2023-09-10 17:05:36 浏览: 94
这道题可以用循环或者递归两种方法来求解。下面分别给出两种方法的代码实现。
循环方法:
```c++
#include <iostream>
using namespace std;
int main() {
int a, n, sum = 0, temp = 0;
cout << "请输入a和n的值:";
cin >> a >> n;
for (int i = 1; i <= n; i++) {
temp = temp * 10 + a;
sum += temp;
}
cout << "结果为:" << sum << endl;
return 0;
}
```
递归方法:
```c++
#include <iostream>
using namespace std;
int sum(int a, int n) {
if (n == 1) {
return a;
} else {
return sum(a, n - 1) * 10 + a * (n - 1);
}
}
int main() {
int a, n;
cout << "请输入a和n的值:";
cin >> a >> n;
cout << "结果为:" << sum(a, n) << endl;
return 0;
}
```
两种方法的思路都是类似的,都是先计算出每一项的值,然后累加求和。其中循环方法比较直观,递归方法则比较简洁。
阅读全文