주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
주어진 수들 중 소수의 개수를 출력한다.
input number와 그보다 작은 모든 수와의 gcd가 모두 1이라면 해당 number는 소수다.
def gcd(a,b):
if a<b:
a, b = b, a
while b != 0:
a, b = b, a%b
return a
def prime(a):
for i in range(2, a):
if gcd(i,a) == 1:
return True
else:
return False
N = int(input())
data = list(map(int,input().split()))
for i in range(N):
data[i] = prime(data[i])
print(data.count(True))
def prime(n):
if n < 2:
return False
for i in range(2, n):
if i*i > n:
break
if n % i == 0:
return False
return True
input()
a = list(map(int, input().split()))
cnt = 0
for x in a:
if prime(x) is True:
cnt += 1
print(cnt)