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 < 0) break;
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", &N);
}//while문
return 0;
}
|
cs |
728x90
'지난 학기들의 기록 > C 기초' 카테고리의 다른 글
[C실습] 배열 유형 분석 2- N개의 정수배열에서 M개의 칸씩 위치옮기기 (0) | 2020.05.31 |
---|---|
[C실습] 배열 유형 분석 1- N개의 정수배열에서 M개씩 그룹지어 비교하기(+추가) (2) | 2020.05.31 |
[C실습] 배열 실습문제 11~13번 풀이 (0) | 2020.05.21 |
[C언어] 범위가 지정된 난수생성 : a~b 범위의 난수를 생성하라 (0) | 2020.05.11 |
[C실습] 두번째로 빠른 문자 출력하기 (1) | 2020.05.10 |
댓글