PS/BOJ
[C] 백준 1929 : 소수 구하기
소-은
2022. 8. 29. 14:38
728x90
1. 문제
https://www.acmicpc.net/problem/1929
1929번: 소수 구하기
첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.
www.acmicpc.net
2. 문제해석
소수인지 아닌지를 판단하는 함수를 만들어야 한다.
int isPrime(int a) {
if (a < 2) return -1; // 소수 아님
for (int i = 2; i*i <= a; i++) {
if (a % i == 0) {
return -1; // 소수 아님
}
}
return 0; // 소수
}
3. 정답
#include <stdio.h>
int isPrime(int a) {
if (a < 2) return -1; // 소수 아님
for (int i = 2; i*i <= a; i++) {
if (a % i == 0) {
return -1; // 소수 아님
}
}
return 0; // 소수
}
int main() {
int m, n;
scanf_s("%d %d", &m, &n);
while (m <= n) {
if (isPrime(m) == 0) printf("%d\n", m);
m++;
}
}
728x90