자격증/정보처리기사 실기 - 기출문제
[정보처리기사 실기] 2022년 1회 17 - 프로그래밍 [C]
쏠솔랄라
2025. 7. 21. 22:44
17 다음 C 언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오. (단, 출력문의 출력 서식을 준수하시오.)
#include <stdio.h>
int isPrime(int number) {
for(int i=2; i<nuber; i++)
if(number%i==0) return 0;
return 1;
}
int main() {
int number = 13195;
int max_div = 0;
for(int i=2; i<number; i++)
if(isPrime(i)==1 && number%i==0) max_div=i;
printf("%d", max_div);
}
답
더보기
29
해설
코드 | 실행순서 및 해석 | ||
1 | #include <stdio.h> | ||
2 | int isPrime(int number) { | ||
3 | for(int i=2; i<nuber; i++) | ||
4 | if(number%i==0) return 0; | ||
5 | return 1; | ||
6 | } | ||
7 | int main() { | ||
8 | int number = 13195; | ||
9 | int max_div = 0; | ||
10 | for(int i=2; i<number; i++) | ||
11 | if(isPrime(i)==1 && number%i==0) max_div=i; | isPrime(i)==1 은 소수임을 묻는 식 number%i는 약수를 저장함 → 소수이자 number의 약수가 저장되는 것 → 13195의 소수는 5*7*13*29로 최종적으로 max_div에는 29가 저장됨 |
|
12 | printf("%d", max_div); | ||
13 | } |