java-基础练习题3
生活随笔
收集整理的這篇文章主要介紹了
java-基础练习题3
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【程序3】?
題目:打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。?
1.程序分析:利用for循環控制100-999個數,每個數分解出個位,十位,百位。?
方法:把一個三位數,分解為個位,十位,百位,用到了取余運算,然后再把獲取到的三個數來個三次方相加==三位數
1 private boolean flowerNumber(int number) { 2 boolean flag = true; 3 int one = number % 10; 4 int ten = number / 10 % 10; 5 int hundred = number / 100 % 10; 6 double v = Math.pow(one, 3) + Math.pow(ten, 3) + Math.pow(hundred, 3); 7 if (number == (int) (v)) { 8 flag = true; 9 } else { 10 flag = false; 11 } 12 return flag; 13 }?
測試代碼:
1 @Test 2 public void test3() { 3 for (int i = 100; i <= 999; i++) { 4 if (flowerNumber(i)){ 5 System.out.print(i+","); 6 } 7 } 8 System.out.println(); 9 }?
測試結果:
153,370,371,407,?
總結
以上是生活随笔為你收集整理的java-基础练习题3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决ie7不支持after、before
- 下一篇: [ROBOT] python libra