打印出所有的“水仙花数”

来源:互联网 发布:手机编曲的软件 编辑:程序博客网 时间:2024/04/27 18:42
所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。老板突然让我们写算法题,虽然网上很多答案,可是不让看,我们只好自己写.
我是用C#控制台写的代码,代码如下:
using System;
using System.Text;
public class Flower
{
    public void PrintFlowerNum()
    {
        //定义百位,十位和个位数
        int bw, sw, gw;
        for (int i = 100; i <= 999; i++)
        {
            bw = i / 100;//百位数
            sw = (i / 10) % 10;//十位数
            gw = i % 10;//个位数
            int nFlower = bw * bw * bw + sw * sw * sw + gw * gw * gw;
            if (nFlower == i)
            {
                Console.WriteLine(i.ToString());
            }
        }
    }
    public static void Main()
    {
        Flower f = new Flower();
        f.PrintFlowerNum();
    }
}
写这样的小算法,主要是为了练手,也可以锻炼个人的代码规整度与命名规范.主要还是思维能力的提高.虽然我数学不是很好,但像一些经典的算法,还是要整出一个清晰的解法.
原创粉丝点击