C語言阿姆斯壯數程式

2019-10-16 22:08:57

阿姆斯特朗數是一個等於其數位的立方數之和的數位。例如,153是一個阿姆斯壯數位,如下 -

153 = (1 * 1 * 1) + (5 * 5 * 5) + (3 * 3 * 3)
153 = 1 + 125 + 27
153 = 153

程式碼實現

該演算法的實現如下。可以更改arms變數的值並執行程式 -

#include <stdio.h>

int main() {
   int arms = 153; 
   int check, rem, sum = 0;

   check = arms;

   while(check != 0) {
      rem = check % 10;
      sum = sum + (rem * rem * rem);
      check = check / 10;
   }

   if(sum == arms) 
      printf("%d is an armstrong number.", arms);
   else 
      printf("%d is not an armstrong number.", arms);

   return 0;
}

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

153 is an armstrong number.