Java三種求水仙花數(shù)的方法
更新時間:2018年02月26日 09:43:08 作者:彬菌
本篇文章通過求水仙花數(shù)的實例來讓大家對JAVA求數(shù)的概念和方法有更深入的理解和應用,學習參考下吧。
水仙花數(shù):水仙花數(shù)是三位數(shù),它的各位數(shù)字的立方和等于這個三位數(shù)本身,例如:370=33+73+00;371=33+73+13,370、371就是一個水仙花數(shù)
注意:要判斷一個三位數(shù)是不是水仙花數(shù),得先取得這個三位數(shù)的的個位,十位和百位
普通for循環(huán):
public class Daffodil { public static void main(String[] args) { int count = 0; //定義水仙花數(shù)的個數(shù) for(int i=100;i<=10000;i++){ //水仙花數(shù)范圍 int b = i/100; //取得百位數(shù) int s = (i-100*b)/10; //取得十位數(shù) int g = (i-s*10-b*100); //取得個位數(shù) if(i==g*g*g+s*s*s+b*b*b){ //水仙花數(shù)判定 System.out.print(i+" "); //輸出符合條件的數(shù) count++; } } System.out.println(); //換行 System.out.println("水仙花數(shù)總共有"+count+"個"); //輸出水仙花數(shù)的總數(shù) } }
while循環(huán):
public class Daffodil { public static void main(String args[]){ int i=100; int count=0; //定義水仙花數(shù)的個數(shù) while(i<10000){ int b = i/100; //取得百位數(shù) int s = (i-100*b)/10; //取得十位數(shù) int g = (i-s*10-b*100); //取得個位數(shù) if(i==g*g*g+s*s*s+b*b*b){ //水仙花數(shù)判定 System.out.print(i+" "); //輸出符合條件的數(shù) count++; } i+=1; } System.out.println(); System.out.println("水仙花數(shù)總共有"+count+"個"); //輸出水仙花數(shù)的總數(shù) } }
do-while循環(huán):
public class Daffodil { public static void main(String args[]){ int i=100; int count=0; //定義水仙花數(shù)的個數(shù) do{ i+=1; int b = i/100; //取得百位數(shù) int s = (i-100*b)/10; //取得十位數(shù) int g = (i-s*10-b*100); //取得個位數(shù) if(i==g*g*g+s*s*s+b*b*b){ //水仙花數(shù)判定 System.out.print(i+" "); //輸出符合條件的數(shù) count++; } }while(i<10000); System.out.println(); System.out.println("水仙花數(shù)總共有"+count+"個"); //輸出水仙花數(shù)的總數(shù) } }
相關文章
SpringBoot實現(xiàn)網(wǎng)站的登陸注冊邏輯記錄
登陸注冊功能是我們日常開發(fā)中經(jīng)常遇到的一個功能,下面這篇文章主要給大家介紹了關于SpringBoot實現(xiàn)網(wǎng)站的登陸注冊邏輯的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2021-10-10