2009年11月30日 星期一

水仙花數

 
Narcissus Number 指的是「各個位數的立方和等於原數」的數。
列出 100~1000 間的那斯索斯~
應該還有更聰明的羅列方法..
int main ()
{
    #define C n[x] = x*x*x; x++
    int a=1, b=0, c=0, x=0; 
    int n[10]; {C,C,C,C,C,C,C,C,C,C;} 
     
    for (x=99; ++x < 1000; 
        ++c > 9 && (c=0, ++b > 9) && (b=0, ++a)) 
        if (x == n[a]+n[b]+n[c]) cout <<' '<< x;
}

沒有留言:

張貼留言