Xcode寫C++(程序練習2:輸出所有的“水仙花數”)

輸出所有的“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字立方合等於該數本身。例如,153是水仙花數,因爲153=1的三次方+5的三次方+3的三次方。

以153爲例。利用取餘的思想我們先將153/10取餘得到3,再將3做三次方;將153/10得到15再將15/10取餘得到5,再將5做三次方;將15/10得到1,將1做三次方。將三位數的三次方相加,順序即爲3的三次方+5的三次方+1的三次方=153本身,判斷後即爲水仙花數,返回、輸出、打印。
我們可以利用布爾類型直接判斷真假,即真值返回。

#include <iostream>
//水仙花數
bool IsFlower(int n)//true是 false否
{
    int a;//保存個位數字
    int sum =0;
    int tmp =n;//定義臨時變量保存n的值
    while(n!=0)
    {
        a=n%10;//得到個位數字
        sum+=a*a*a;//a的三次方
        n/= 10;//丟掉個位數字
    }
    return sum ==tmp;
}
int main()
{
    for(int i =100;i<=1000;i++)//三位數
    {
        if(IsFlower(i))
        {
            printf("%d\n",i);
        }
    }
}

輸出結果:
即“水仙花數”有153、370、371、407
輸出結果

源代碼:
#include
//水仙花數
bool IsFlower(int n)//true是 false否
{
int a;//保存個位數字
int sum =0;
int tmp =n;//定義臨時變量保存n的值
while(n!=0)
{
a=n%10;//得到個位數字
sum+=aaa;//a的三次方
n/= 10;//丟掉個位數字
}
return sum ==tmp;
}
int main()
{
for(int i =100;i<=1000;i++)//三位數
{
if(IsFlower(i))
{
printf("%d\n",i);
}
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章