首頁 >後端開發 >C#.Net教程 >求水仙花數c語言代碼怎麼寫

求水仙花數c語言代碼怎麼寫

angryTom
angryTom原創
2020-03-03 17:36:0122726瀏覽

求水仙花數c語言代碼怎麼寫

求水仙數c語言程式碼怎麼寫

#水仙數(Narcissistic number)也稱為超完全數字不變數( pluperfect digital invariant, PPDI)、自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數(Armstrong number),水仙花數是指一個3 位數,它的每個位上的數字的3次冪之和等於它本身(例如:1^3 5^3 3^3 = 153)。

推薦學習:c語言影片教學

以下是使用C語言求水仙花數的程式碼:

#include <stdio.h> 
#include <stdlib.h>
void main() 
{ 
    int i,j,k,n; 
    printf("&#39;water flower&#39;number is:"); 
    for(n=100;n<1000;n++) 
    { 
        i=n/100;/*分解出百位*/ 
        j=n/10%10;/*分解出十位*/ 
        k=n%10;/*分解出个位*/ 
        if(n==i*i*i+j*j*j+k*k*k) 
        { 
            printf("%-5d",n); 
        } 
    } 
    printf("\n"); 
}

升級版:

#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
int cube(const int n){
    return n*n*n;
}
bool
isNarcissistic(const int n){
    int hundreds=n/100;
    int tens=n/10-hundreds*10;
    int ones=n%10;
    return cube(hundreds)+cube(tens)+cube(ones)==n;
}
int main(void){
    int i;
    for(i=100;i<1000;++i){
        if(isNarcissistic(i))
            printf("%d\n",i);
    }
    return EXIT_SUCCESS;
}

更多C語言教程,請關注PHP中文網

以上是求水仙花數c語言代碼怎麼寫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn