题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
为了节约运算开销,采取临时变量存储中间值
import java.util.Scanner;
public class Program {
public static void main(String[] args){
int sum = 0, a, n, pre = 0;
Scanner sc = new Scanner(System.in);
System.out.println("请输入项数:");
n = sc.nextInt();
System.out.println("请输入数值:");
a = sc.nextInt();
for ( int i = 1; i <= n; i++ ) {
pre += a;
sum += pre;
a *= 10;
}
System.out.println("结果:"+sum);
}
}

本文介绍了一个使用Java实现的高效求和算法,该算法通过临时变量存储中间值来减少重复计算,实现对一系列由单一数字构成并逐渐增加位数的数进行求和。例如,求2+22+222+2222+22222的和。代码中利用了Scanner类读取用户输入的项数和数值,并通过循环结构完成计算。
2302

被折叠的 条评论
为什么被折叠?



