您的位置:首页 > 编程语言 > Java开发

java经典算法_003水仙花数

2012-11-23 16:45 471 查看
// 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。

// 例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
// 程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

package wzs.arithmetics;

// 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。
// 例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
// 程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
public class Test_wzs3
{
public static void main(String[] args)
{
for (int i = 100; i < 999; i++)
{
if (Test_wzs3.f(i))
{
System.out.print(i + ",");
}
}
}

public static boolean f(int number)
{
if (number < 100 || number > 999)
{
System.out.println("请输入三位数.");
return false;
}
int a, b, c;// a百位数字,b十位数字,c个位数字
a = number / 100;
b = (number % 100) / 10;
c = number % 10;
if (number == a * a * a + b * b * b + c * c * c)
{
return true;
}
else
{
return false;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息