面试题4,打印出100-999所有的“水仙花数”。
生活随笔
收集整理的這篇文章主要介紹了
面试题4,打印出100-999所有的“水仙花数”。
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
提示:水仙花數(shù)是指一個(gè) n 位數(shù) ( n≥3 ),它的每個(gè)位上的數(shù)字的 n 次冪之和等于它本身。
(例如:1^3 + 5^3+ 3^3 = 153)
package 面試;/*** 水仙花數(shù)* @author liugang* @create 2018/12/19 20:07**/ public class Shuixianhua {public static void main(String[] args) {int a,b,c;for(int i=100;i<999;i++){a = i%10;b = (i/10)%10;c = i/100;if (a*a*a+b*b*b+c*c*c==i){System.out.println("水仙花數(shù):"+i);}}// int i = 137; // System.out.println(137%10); }}怎么求個(gè)位數(shù)和十位數(shù)和百位數(shù)呢
a = Integer.parseInt(String.valueOf(i).substring(0,1));b = Integer.parseInt(String.valueOf(i).substring(1,2));;c = i%100;我之前是這樣弄,但發(fā)現(xiàn)只打印了407,取的有問(wèn)題
c取的問(wèn)題,個(gè)位數(shù)的值,應(yīng)該是i%10這樣取
int i=137; //取個(gè)位數(shù) 7 = 137-130;130是可以被10整除的,所以可以這樣取 int c = i%10; //取十位數(shù) 37 = 137-100;直接是先除10,降到兩位數(shù),然后再除10取模 int b = (i/10)%10; //取百位數(shù) 直接除100就ok了; int a = i/100;?
轉(zhuǎn)載于:https://www.cnblogs.com/fuckingPangzi/p/10145852.html
總結(jié)
以上是生活随笔為你收集整理的面试题4,打印出100-999所有的“水仙花数”。的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MySql - GROUP BY 和 H
- 下一篇: 查看串口的驱动信息