본문 바로가기
지난 학기들의 기록/C 기초

[C실습]소수와 다음 소수 출력하기

by 아메리카노와떡볶이 2020. 5. 10.
728x90

 종료조건시까지 양의 정수 N을 반복해서 입력받고, 입력받은 정수중 소수와 그 소수의 다음소수를 출력하라.

 

입력예시 11 4 101 200 -10

 

출력예시 11 13

            101 103

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#pragma warning (disable:4996
#include <stdio.h> 
int main() { 
    int N; 
    int cnt = 0,cnt2=0
    int flag = 1
    scanf("%d"&N); 
    while (flag) { 
        if (N &lt; 0break
        cnt = 0
            for(int j=1;j<=N;j++){ 
                
                if (N % j == 0) cnt++
            }// j for문 
            if (cnt == 2) { 
                printf("%d ", N);// cnt가 2면 소수 
                
                for(int k=N+1;;k++){ 
                    cnt2 = 0
                    for (int q = 1; q <= k; q++) { 
                        if (k % q == 0) cnt2++
                    } 
                    if (cnt2 == 2) { 
                        printf("%d", k); 
                        printf("\n"); 
                        break
                    } 
                }// k for문 
            } 
             
            scanf("%d"&amp;N); 
        }//while문 
       
    return 0
}
 
cs

 

 

 

 

728x90

댓글