求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。

package com.xjh.demo.exam;

/**
 * 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個數字。
 * 例如2+22+222+2222+22222(此時共有5個數相加),幾個數相加由鍵盤控制。
 * 注意:a是取1-9之間的數字,由用戶來錄入決定,具體要幾個數相加也是由用戶來決定,
 * 規律:cardinal爲基數,每循環一次它都會改變(變大10倍),但尾數不變
 * sum=(a*10+a),因此尾數得用一個變量來保存它
 */
public class SumCalculate {
    public static void main(String[] args) {
        int result = calculate(2, 5);
        System.out.println(result);
    }

    public static int calculate(int cardinal, int limit) {
        int result = 0;
        int num = cardinal;
        for (int i = 0; i < limit; i++) {
            result += num;
            num = num * 10 + cardinal;
        }
        return result;
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章