백준 1978 c++

magicdrill·2024년 3월 4일

백준 문제풀이

목록 보기
93/673

백준 1978 c++

#include <iostream>

using namespace std;

int input(int upper);
void input_arr(int arr[], int size);
int check_arr_prime(int arr[], int size);

int main(void)
{
	int N, count = 0;
	int* arr = nullptr;

	N = input(100);
	arr = new int[N] {};
	input_arr(arr, N);
	count = check_arr_prime(arr, N);
	cout << count << endl;

	delete[] arr;

	return 0;
}

int input(int upper)
{
	int n;
	while (1)
	{
		cin >> n;
		if (n >= 1 && n <= upper)
		{
			break;
		}
		else
		{
			;
		}
	}

	return n;
}

void input_arr(int arr[], int size)
{
	int i;
	for (i = 0; i < size; i++)
	{
		arr[i] = input(1000);
	}

	return;
}

int check_arr_prime(int arr[], int size)
{
	int count = 0;
	int temp;
	int i, j;
	bool prime;

	for (i = 0; i < size; i++)
	{
		prime = 0;
		temp = arr[i];
		//cout << arr[i] << endl;
		for (j = 2; j < temp; j++)
		{
			if (temp % j == 0)
			{
				prime = 0;
				break;
			}
			else
			{
				prime = 1;
			}
		}
		if (prime == 1 || temp == 2)
		{
			count++;
		}
		else
		{
			;
		}
	}

	return count;
}

0개의 댓글