黑马程序员技术交流社区
标题:
水仙花数
[打印本页]
作者:
北海北
时间:
2017-2-28 07:24
标题:
水仙花数
【程序3】
题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
public class lianxi03 {
public static void main(String[] args) {
int b1, b2, b3;
for(int m=101; m<1000; m++) {
b3 = m / 100;
b2 = m % 100 / 10;
b1 = m % 10;
if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m) {
System.out.println(m+"是一
作者:
易大帅
时间:
2017-2-28 08:24
能说出原理吗
作者:
南山南
时间:
2017-2-28 08:42
这不就是简单的for循环吗?最小的三位数是100最大的是999从两者之间取值,模于100取百位,取余100模10取十位,取余10求个位
作者:
南山南
时间:
2017-2-28 08:43
话说,还没开班,理解不深
作者:
lvshen9
时间:
2017-2-28 08:53
请问m的范围是怎么确定的
作者:
北海北
时间:
2017-2-28 12:37
lvshen9 发表于 2017-2-28 08:53
请问m的范围是怎么确定的
水仙花数是个3位数,所以在100-1000之间,所以循环之间的数就可以了
作者:
北海北
时间:
2017-2-28 12:38
易大帅 发表于 2017-2-28 08:24
能说出原理吗
你楼下说的原理很详细了
作者:
笑对明天
时间:
2017-2-28 13:43
易大帅 发表于 2017-2-28 08:24
能说出原理吗
依次求出个十百位上的数,每位数字的三次方的和等于该数本身,就是水仙花数
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2