国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > 用java寫水仙花數(shù)代碼:java水仙花數(shù)for循環(huán)

用java寫水仙花數(shù)代碼:java水仙花數(shù)for循環(huán)

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-07-23 13:48:41 1690091321

水仙花數(shù)是指一個三位數(shù),它的各個位上的數(shù)字的立方和等于該數(shù)本身。例如:153,是因為13+53+33=153。這個數(shù)在古代稱為"自戀數(shù)",因為它的每一位數(shù)字立方數(shù)相加后,正好等于自身,因此自認為"最美麗、最出色"。

如何用Java寫水仙花數(shù)代碼

Java語言是一個功能強大的編程語言,它可以用來編寫各種類型的程序。下面是一個用Java編寫水仙花數(shù)的代碼示例:

//定義變量int i = 0, j = 0, k = 0; //循環(huán)生成所有三位數(shù)for (i = 1; i <= 9; i++) {   for (j = 0; j <= 9; j++) {      for (k = 0; k <= 9; k++) {         //計算立方和         int n = i * 100 + j * 10 + k;         int m = i * i * i + j * j * j + k * k * k;         //判斷是否為水仙花數(shù)         if (n == m) {            System.out.println(n);         }      }      }}

以上代碼中,我們定義了三個變量i、j和k,用于生成所有的三位數(shù)。之后我們使用for循環(huán)遍歷所有的三位數(shù),并計算它的各個位上的數(shù)字的立方和。最后判斷是否與它本身相等,如果相等就輸出這個數(shù)字。

如何改進水仙花數(shù)代碼

以上的Java代碼可以用于生成所有的水仙花數(shù),但是如果我們只想生成1000以內(nèi)的水仙花數(shù),這個程序就會變得很慢。因此,我們需要對代碼進行優(yōu)化,讓它更加高效。

我們可以將for循環(huán)中的i、j和k的范圍縮小到0~9之間,然后再將生成的三位數(shù)與1000做比較,如果大于1000就退出循環(huán)。這樣可以大大提高代碼的運行效率。

//定義變量int i = 0, j = 0, k = 0; //循環(huán)生成所有三位數(shù)for (i = 0; i <= 9; i++) {   for (j = 0; j <= 9; j++) {      for (k = 0; k <= 9; k++) {         //計算立方和         int n = i * 100 + j * 10 + k;         int m = i * i * i + j * j * j + k * k * k;         //判斷是否為水仙花數(shù)         if (n == m && n < 1000) {            System.out.println(n);         }      }      }}

以上代碼中,我們調(diào)整了i、j和k的范圍,并在判斷水仙花數(shù)時加入了一個小于1000的條件,避免了生成大于1000的數(shù)字。這樣可以大大提高代碼的運行效率。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學 138****2860 剛剛成功領(lǐng)取
王同學 131****2015 剛剛成功領(lǐng)取
張同學 133****4652 剛剛成功領(lǐng)取
李同學 135****8607 剛剛成功領(lǐng)取
楊同學 132****5667 剛剛成功領(lǐng)取
岳同學 134****6652 剛剛成功領(lǐng)取
梁同學 157****2950 剛剛成功領(lǐng)取
劉同學 189****1015 剛剛成功領(lǐng)取
張同學 155****4678 剛剛成功領(lǐng)取
鄒同學 139****2907 剛剛成功領(lǐng)取
董同學 138****2867 剛剛成功領(lǐng)取
周同學 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
開班信息
北京校區(qū)
  • 北京校區(qū)
  • 大連校區(qū)
  • 廣州校區(qū)
  • 成都校區(qū)
  • 杭州校區(qū)
  • 長沙校區(qū)
  • 合肥校區(qū)
  • 南京校區(qū)
  • 上海校區(qū)
  • 深圳校區(qū)
  • 武漢校區(qū)
  • 鄭州校區(qū)
  • 西安校區(qū)
  • 青島校區(qū)
  • 重慶校區(qū)
  • 太原校區(qū)
  • 沈陽校區(qū)
  • 南昌校區(qū)
  • 哈爾濱校區(qū)