【Java基礎】for迴圈實現在控制檯列印水仙花數
阿新 • • 發佈:2019-01-12
程式碼:
/* * 需求:在控制檯輸出所有的”水仙花數” * * 分析: * 什麼是水仙花數呢? * 所謂的水仙花數是指一個三位數,其各位數字的立方和等於該數本身。 * 舉例:153就是一個水仙花數。 * 153 = 1*1*1 + 5*5*5 + 3*3*3 * * A:三位數其實就告訴了我們水仙花數的範圍 * 100-999 * B:如何獲取一個數據的每一個位上的數呢? * 舉例:我有一個數據153,請問如何獲取到個位,十位,百位 * 個位:153%10 = 3; * 十位:153/10%10 = 5; * 百位:153/10/10%10 = 1; * 千位:... * 萬位:... * C:讓每個位上的立方和相加,並和該資料進行比較,如果相等,就說明該資料是水仙花數,在控制檯輸出*/ public class ForTest { public static void main(String[] args) { //通過迴圈獲取到每一個三位數 for(int x=100; x<1000; x++) { //獲取個位,十位,百位 int ge = x%10; int shi = x/10%10; int bai = x/10/10%10; //讓每個位上的立方和相加,並和該資料進行比較,如果相等,就說明該資料是水仙花數,在控制檯輸出if((ge*ge*ge+shi*shi*shi+bai*bai*bai) == x) { System.out.println(x); } } } }
結果: