(C언어,파이썬)백준 1978. 소수찾기

문제

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

출력

주어진 수들 중 소수의 개수를 출력한다.

 

C언어

 

#include <stdio.h>

int main(void)
{
    int n;
    int num, count = 0;

    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &num);
        for (int j = 2; j <= num; j++)
        {
            if(num == j)
                count++;
            if (num % j == 0)
                break;
        }
    }

    printf("%d", count);

    return 0;
}​

 

 

파이썬

 

import sys

n = int(sys.stdin.readline())
num = list(map(int, input().split()))
count = 0

if n == len(num):
    for i in range(n):
        for j in range(2, num[i] + 1):
            if num[i] == j:
                count += 1
            if num[i] % j == 0:
                break

print(count)​

조건에서 큰 수를 다루지 않으므로 무작정 구하는 방식을 사용했다.