본문 바로가기
문제 풀이/백준(BOJ)

[C] 백준 1929번 : 소수 구하기

by 희조당 2021. 3. 16.
728x90

www.acmicpc.net/problem/1929

 

1929번: 소수 구하기

첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.

www.acmicpc.net


문제 접근법

 1. 자연수 m과 n을 입력 받는다.

 2. 소수를 판별하는 함수를 통해서 m과 n 사이의 값들이 소수인지 확인한다.

 3. 소수가 맞으면 출력

느낀점

단계별로 문제를 풀이하다보니 이전의 소수 판별 문제와 매우 비슷해서 매우 쉬웠다.

코드

#include <stdio.h>

bool isPrime(int n) {
	if (n <= 1) return false;
	for (int i = 2; i * i <= n;i++) {
		if(n % i == 0) return false;
	}
	return true;
}

int main() {
	int m, n, i;
	scanf("%d %d", &m, &n);
	for (i = m;i <= n;i++) {
		if (isPrime(i)) {
			printf("%d\n", i);
		}
	}

	return 0;
}

 

댓글