一、第一種寫法
package com.pb.demo1; import java.util.Scanner; /** * 題目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。例如2+22+222+2222+22222(此時共有5個數相加), * a以及累加數的位數是從鍵盤接收。 程序分析: * 1、 接收從鍵盤輸入的一個數(數字只能是1-9之間的數) * 2、 接收一個數表示累加數的位數 * 3.例如,輸入一個4(累加數的位數),鍵盤輸入a的值是5:s=5+55+555+5555 4.輸入一個5:s=a+aa+aaa+aaaa+aaaaa * 第一種寫法 */ public class Demo2 { public static void main(String[] args) { //聲明值一個掃描器的變量 Scanner input =new Scanner(System.in); System.out.println("請輸入參與運算的數1-9:"); int n=input.nextInt(); System.out.println("請輸入運算的次數:"); int num=input.nextInt(); //定義每次循環的中間變量用來計算每次的數 double nums=0.0; //最后聽總和 double sum=0.0; for (int i = 0; i < num; i++) { //每次的數加上N為新的n的值 nums+=n; //總和 sum+=nums; //n的值每次增加 一位 n=n*10; System.out.println("每次的運算的數是:"+nums); } System.out.println("最后的總和是:"+sum); } }
二、第二種寫法
package com.pb.demo1; import java.util.Scanner; /** * 題目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。例如2+22+222+2222+22222(此時共有5個數相加), * a以及累加數的位數是從鍵盤接收。 程序分析: * 1、 接收從鍵盤輸入的一個數(數字只能是1-9之間的數) * 2、 接收一個數表示累加數的位數 * 3.例如,輸入一個4(累加數的位數),鍵盤輸入a的值是5:s=5+55+555+5555 4.輸入一個5:s=a+aa+aaa+aaaa+aaaaa * 第二種寫法 */ public class Demo3 { public static void main(String[] args) { //聲明值一個掃描器的變量 Scanner input =new Scanner(System.in); System.out.println("請輸入參與運算的數1-9:"); int n=input.nextInt(); System.out.println("請輸入運算的次數:"); int num=input.nextInt(); //定義每次循環的中間變量用來計算每次的數 double nums=0.0; //最后聽總和 double sum=0.0; for (int i = 0; i < num; i++) { //利用數學的冪函數來計算 nums+=Math.pow(10, i)*n; sum+=nums; System.out.println("每次的運算的數是:"+nums); } System.out.println("最后的總和是:"+sum); } }