C++阿姆斯壯數位


在編寫C++程式以檢查數位是否為阿姆斯壯數位之前,先要來了解一下阿姆斯壯數位是什麼。

阿姆斯壯數位是等於其數位的立方之和的數位。 例如:0,1,153,370``,371407是阿姆斯壯數位。

下面說明為什麼371是阿姆斯壯數位。

371 = (3*3*3)+(7*7*7)+(1*1*1)    
這裡:    
(3*3*3)=27    
(7*7*7)=343    
(1*1*1)=1    
所以:    
27+343+1=371

讓我們來看看如何使用C++程式來判斷阿姆斯壯數位

#include <iostream>  
using namespace std;  
int main()  
{  
    int n,r,sum=0,temp;    
    cout<<"Enter the Number=  ";    
    cin>>n;    
    temp=n;    
    while(n>0)    
    {    
        r=n%10;    
        sum=sum+(r*r*r);    
        n=n/10;    
    }    
    if(temp==sum)    
        cout<<"Armstrong Number."<<endl;    
    else    
        cout<<"Not Armstrong Number."<<endl;   
    return 0;  
}

執行上面程式碼,得到以下結果 -

Enter the Number= 371
Armstrong Number.
Enter the Number= 342   
Not Armstrong Number.