給定一個不超過 5 位的正整數,要求:
import java.util.Scanner;
public class Eleventh {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("請輸入一個不多於5位的正整數:");
int num = input.nextInt();
int original = num;
int count = 0;
int reversed = 0;
while (num > 0) {
int digit = num % 10;
reversed = reversed * 10 + digit;
num /= 10;
count++;
}
System.out.println(original + "的位數是:" + count + "\n" + original + "的逆序是:" + reversed);
}
}
1. 位數統計:每次迴圈將 num 除以 10,計數器 count 加 1,直到 num 變為 0。
2. 逆序構建:利用取模運算 num % 10 獲取最後一位數字,將其加到 reversed 末尾(reversed * 10 + digit)。
3. 邊界處理:題目限制「不多於 5 位」,int 類型足夠容納(最大 99999)。若輸入 0,迴圈不執行,需額外處理(本題假設輸入正整數)。
BigInteger 或字符串)。此練習強化了整數拆解、迴圈控制與數字重組的基本技巧。