1054: 求a+aa+aaa+…aa…a(n个a)
题目描述
输入n和a,求a+aa+aaa+…aa…a(n个a),如当n=3,a=2时,2+22+222=246。
输入
包含两个整数,n和a,含义如上述,n和a都是小于10的非负整数。
输出
输出前n项和,单独占一行
样例输入 Copy
3 2
样例输出 Copy
246
#include <iostream>
//1054: 求a+aa+aaa+…aa…a(n个a)
//题目描述:输入n和a,求a+aa+aaa+…aa…a(n个a),如当n=3,a=2时,2+22+222=246。
//输入:包含两个整数,n和a,含义如上述,n和a都是小于10的非负整数。
//输出:输出前n项和,单独占一行
using namespace std;
int main()
{
int n,a,i=1;//定义最大位数n,显示数字a,循环条件i
int t=0;//统计单次循环相加的结果
int s=0;//计算循环后的总结果
cin>>n>>a;//输入n,a
while(i<=n){//循环条件,如果当前位数超过n,跳出循环
t=a+t;//本次循环的值为t
a=a*10;//a增加一位,比如由个位变为十位
s=s+t;//总循环的和
i++;//循环条件加1,进入下次循环
}
cout<<s;//输出循环后的总结果s
return 0;
}