《Java基础经典程序100例》(06)a+aa+aaa+ +aaaaaaaaa=?

980 阅读1分钟

小知识,大挑战!本文正在参与「程序员必备小知识」创作活动​​

代码演示:

其中 a 为 1 至 9 之中的一个数,项数也要可以指定

package csdncom.tt;

import java.util.Scanner;

/**
 * Created by java李杨勇 on 2021/10/30.
 */
public class Sum {
	public static void main(String[] args) {
		int a; // 定义输入的 a
		int howMany; // 定义最后的一项有多少个数字
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入一个 1~9 的 a 值");

		a = scanner.nextInt();
		System.out.println("请问要相加多少项?");
		howMany = scanner.nextInt();
		int sum = 0;
		int a1 = a; // 用来保存 a 的初始值
		for (int i = 1; i <= howMany; i++) {
			sum += a;
			a = 10 * a + a1; // 这表示 a 的下一项
			// 每次 a 的下一项都等于前一项*10,再加上刚输入时的 a ;注意,这时的 a 已经变化了。
		}
		System.out.println("sum=" + sum);
	}
}

打印:

image.png