반응형
문제.
자연수 숫자를 입력하고, 그 보다 작은 모든 소수를 출력하시오.
(소수는 1과 자신 이외의 수로는 나눌 수 없는 자연수. 1은 소수가 아님)
실행결과 1)
Input Number: 100
소수>> 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
답은 아래에... ↓
스스로 풀어보시고... ↓
아래 답과 비교해보세요. ↓
문제 풀이
#include <stdio.h>
int main(int argc, char **argv)
{
int prime[100];
int idx = 0;
int i;
int j;
int input;
int is_prime;
printf("Input Number: ");
scanf("%d", &input);
for(i = 2; i <= input; i++) {
is_prime = 1;
for(j = 0; j < idx; j++) {
if(i % prime[j] == 0) {
is_prime = 0;
break;
}
}
if(is_prime) {
prime[idx++] = i;
}
}
printf("소수>> ");
for(i = 0; i < idx; i++) {
printf("%d ", prime[i]);
}
return 0;
}
반응형
'C언어 문제 > 수학 문제' 카테고리의 다른 글
연립방정식 x, y의 값을 구하시오. (0) | 2019.12.18 |
---|---|
소수 여부 판단하는 알고리즘 (제곱근 범위 나누기법) (0) | 2019.12.04 |
최대 공약수, 최소 공배수 구하기 (0) | 2019.11.19 |
2차 방정식의 근을 구하시오. (1) | 2019.11.06 |
주사위를 n번 던져 무중복 합이 k인 경우 나열하기 (0) | 2019.11.04 |