4. 1에서 N까지의 수 중에서 암스트롱수, 완전수, 소수(PRIME NUMBER)를 구하는 프로그램을 작성하여라.
[조건]
- 2~500의 정수 N을 입력한다. 이때 0을 입력하면 끝나고, 잘못 입력되면 "DATA ERROR!"를 출력한다.
- 암스트롱수: 각 자리의 수의 세제곱의 합이 자신의 수와 같은 수.
153 = 13 + 53 + 33
완전수: 약수 중에서 자신의 수를 제외한 모든 약수의 합이 자신의 수와 같은 수.
6 = 1 + 2 + 3 (6의 약수 = 1, 2, 3, 6)
소수: 1과 자신 이외의 약수를 가지지 않는 수. - 결과는 한줄에 10개씩 출력한다.
[실행 예]
RUN
N = 600
DATA ERROR!
N = 400
** 암수트롱수 **
153 370 371
** 완전수 **
6 28
** 소수 **
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97 101 103 107 109 113
127 131 137 139 149 151 157 163 167 173
179 181 191 193 197 199 211 223 227 229
233 239 241 251 257 263 269 271 277 281
283 293 307 311 313 317 331 337 347 349
353 359 367 373 379 383 389 397
N = 0
[The End]
* 교재 문제 6번