java题,急急急!

 我来答
百度网友324204d
2017-04-04 · TA获得超过648个赞
知道小有建树答主
回答量:380
采纳率:85%
帮助的人:297万
展开全部

刚写的代码,你看看,有什么问题随时问我,这是求100-999之间的,还可以求1000-9999之间的;

public class FlowerNumber {

public static void main(String[] args) {

getFlowerNumber();
}

public static void getFlowerNumber(){

for(int number=100;number<=999;number++){

int unit=number%10; //个位

int decade=number%100/10; //百位

int hundreds=number/100;//千位

if(number==(Math.pow(unit, 3)+Math.pow(decade, 3)+Math.pow(hundreds, 3))){

System.out.println("100到999之间的水仙花数是:"+number);

}

}
}
}
//输出结果:
100到999之间的水仙花数是:153
100到999之间的水仙花数是:370
100到999之间的水仙花数是:371
100到999之间的水仙花数是:407
更多追问追答
追问
能不能求出第二个和第四个水仙花数的和,同时输出这两个水仙花数-,-
追答

简单,稍微改造一下就行。

public class FlowerNumber {

public static void main(String[] args) {

List<Integer> flowerNumber = getFlowerNumber();

int sum = getSum(flowerNumber);

System.out.println("二和四水仙花数和是:"+sum);
}

public static List<Integer> getFlowerNumber(){

List<Integer> flowerNums = new ArrayList<Integer>();

for(int number=100;number<=999;number++){

int unit=number%10; //个位

int decade=number%100/10; //百位

int hundreds=number/100;//千位

if(number==(Math.pow(unit, 3)+Math.pow(decade, 3)+Math.pow(hundreds, 3))){

System.out.println("100到999之间的水仙花数是:"+number);

flowerNums.add(number);

}

}

return flowerNums;

}


public static int getSum(List<Integer> list){

Integer second = list.get(1);

System.out.println("第二个水仙花数是:"+second);

Integer fourth = list.get(3);

System.out.println("第四个水仙花数是:"+fourth);

int sum = second + fourth;

return sum;

}

}
//输出结果:
100到999之间的水仙花数是:153
100到999之间的水仙花数是:370
100到999之间的水仙花数是:371
100到999之间的水仙花数是:407
第二个水仙花数是:370
第四个水仙花数是:407
二和四水仙花数和是:777
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式