水仙花數是指一個 n 位數(n≥3),它的每個位上的數字的 n 次冪之和等于它本身。例如,153 是一個水仙花數,因為 1^3 + 5^3 + 3^3 = 153。
要在 Java 中打印水仙花數,你可以使用以下代碼:
public class Main {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
if (isNarcissisticNumber(i)) {
System.out.println(i);
}
}
}
public static boolean isNarcissisticNumber(int num) {
int originalNum = num;
int sum = 0;
int numOfDigits = String.valueOf(num).length();
while (num != 0) {
int digit = num % 10;
sum += Math.pow(digit, numOfDigits);
num /= 10;
}
return sum == originalNum;
}
}
這段代碼首先定義了一個 isNarcissisticNumber
函數,用于判斷一個整數是否為水仙花數。然后,我們遍歷 100 到 999 之間的所有整數,并使用 isNarcissisticNumber
函數檢查它們是否為水仙花數。如果是,則將其打印出來。