안녕하세요. 언제나 휴일입니다.
이번에는 암스트롱의 수를 구하는 소스 코드입니다. 암스트롱의 수는 세 자리의 정수 중에서 각 자리의 수를 세 제곱한 수의 합과 자신이 같은 수를 말합니다.
예를 들어 153 = 1 + 125 + 27 입니다. 이와 같은 수를 암스트롱의 수라고 말합니다.
암스트롱의 수 구하기는 반복문을 사용하여 문제를 간단히 해결할 수 있어요.
알고리즘
암스트롱의 수 판별(num)
num2=num
sum=0
반복(num2>0)
sum = sum + (num2 %10)*(num2 %10)*(num2 %10)
num2 = num2/10
sum == num 결과 반환
소스 코드
//암스트롱의 수 //abc = a*a*a + b*b*b + c*c*c #include <stdio.h> int IsAmstrong(int num); int main(void) { int num = 0; printf("암스트롱의 수 abc = a*a*a + b*b*b + c*c*c\n"); for (num = 100; num <= 999; num++) { if (IsAmstrong(num)) { printf("%3d ", num); } } printf("\n"); return 0; } int IsAmstrong(int num) { int num2 = num; int sum = 0; while (num2>0) { sum += (num2 % 10)*(num2 % 10)*(num2 % 10); num2 = num2 / 10; } return sum == num; }