Java黑皮书课后题第2章:2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加
生活随笔
收集整理的這篇文章主要介紹了
Java黑皮书课后题第2章:2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2.6(求一個整數各位數的和)讀取一個0和1000之間的整數,并將給整數的各位數字相加
- 題目
- 題目描述
- 運行示例
- 題目槽點與破題
- 題目槽點
- 破題
- 如何提取數字
- 代碼塊
- 方法評價
題目
題目描述
2.6(求一個整數各位數的和)讀取一個0和1000之間的整數,并將給整數的各位數字相加
例如:整數是932,各位數字之和時14
提示:932%10=2,932/10=93
運行示例
Enter a number between 0 and 1000: 999
The sum of the digits is 27
題目槽點與破題
題目槽點
在異常、選擇之前出這類題相對不嚴謹(如輸入數值不是整數)
破題
筆者選擇強制類型轉換,雖然和題意中的“讀取一個整數”不合(加上強制類型轉換后,程序即可以讀取整數,也可以讀取浮點數
如何提取數字
舉例:要提取123
123 / 100 = 1
123 % 100 = 23
1即為百位,23為剩下的兩位
23 / 10 = 2
23 % 10 = 3
2為十位,3為剩下的個位
百位+十位+個位=各位數字之和
代碼塊
import java.util.Scanner;public class Test2_6 {public static void main(String[] args) {// 接收輸入Scanner input = new Scanner(System.in);System.out.println("Enter a number between 0 and 1000: ");int number = (int)(input.nextDouble());// 轉換int a = number / 100;number %= 100;int b = number / 10;number %= 10;// 總數int total = a + b + number;// 輸出結果System.out.println("The sum of the digits is "+ total);} }方法評價
方法沒有使用條件判斷語句、捕捉異常,無法判斷接收數據的合法性
總結
以上是生活随笔為你收集整理的Java黑皮书课后题第2章:2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第2章:2.5(金融
- 下一篇: Java黑皮书课后题第2章:*2.8(当