题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由用户控制。
一开始看到需要不停乘上10,脑子有点乱,但慢慢分析下来就还好
这个题就是先输入而后每一个加数要比前一个加数多乘10的一次方加上原始数字,再加起来就稳了,最后要求和。
public class Test1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入原始的数字:");
long a = sc.nextLong();//获取原始数字
System.out.println("请输入要相加的个数:");
int n = sc.nextInt();//获取要相加的个数
long num = a;//每个加数
long sum = 0;//总和初始值定为0
for(int i = 0; i<n; i++) {
sum += num;
//改变加数
num *= 10;
num += a;//第(i+1)加数等于第i个加数乘上10加上原始数字
}
System.out.println("sum= "+sum);
}
}
输出结果: