C++/Foundation

008. 1000까지의 소수를 출력하고 몇 개인지를 출력하시오

페프 2021. 3. 16. 06:38

1000까지의 소수를 출력하고 몇 개인지 출력해보았다.

이것도 for 반복문과 if문을 사용했다.

바깥루프는 n은 2~1000까지 반복하고,

안쪽루프는 i를 2~(n-1)까지 반복하고 n이 i로 나누어 떨어지면 루프를 빠져나옵니다.(소수는 자신 이외의 자연수로 나눌 수 없다)

i와 n이 같다면 그것은 소수이기 때문에 변수 count의 값을 하나씩 증가시켜줍니다

 

#include <iostream>
using namespace std;

int main() {
	int i;
	int count = 0;

	for (int n = 2; n <= 1000;n++) {
		for (i = 2;i <= n-1;i++) {
			if (n % i == 0) {
				break;
			}
		}
		if (i == n) {
			count++;
			cout << n << "\t";
			}
		}
	cout << "\n소수의 갯수 = " << count << endl;
}