C++/BAEKJOON
[C++] BAEKJOON (1978) 소수 찾기
sweetnew
2021. 11. 21. 17:48
반응형
문제
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
첫 줄에 수의 개수 N이 주어진다. (N ≤ 100)
다음으로 1,000 이하의 자연수인 N 개의 수가 주어진다.
주어진 수들 중 소수의 개수를 출력한다.
결과
#include<iostream>
int main() {
using namespace std;
int N, num, cnt = 0;
cin >> N;
for (int i = 0; i < N; ++i) {
cin >> num;
if (num == 2) ++cnt; // 숫자 2는 소수이다.
for (int j = 2; j < num; ++j) { // 2 이상의 자연수로 나누어준다. (소수 찾기)
if (num % j == 0) { // 주어진 수(num)가 임의의 수(j)로 나누어지면 소수가 아니다.
break;
}
if (j == num - 1) { // 주어진 수(num)가 '임의의 수(j)-1'까지 나눈 후, 나누어지지 않으면 소수이다.
++cnt;
}
}
}
cout << cnt;
return 0;
}
출처: BAEKJOON
반응형