문제
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
입력
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
출력
주어진 수들 중 소수의 개수를 출력한다.
제출
import java.util.*;
public class Q_1978 {
/*
소수 찾기
*/
static boolean is_Prime(int number) {
// 1은 소수가 아니다
if(number == 1) {
return false;
}
// 2 ~ number-1 까지 중 나누어 떨어지는 약수가 있는지 판별한다.
for(int i = 2; i <number; i++) {
if(number % i == 0) return false;
}
return true;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
int count = 0;
for(int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
for(int i = 0 ; i < n ; i++) {
if(is_Prime(arr[i])) {
count += 1;
}
}
System.out.println(count);
}
}
'코딩테스트 > JAVA 문제' 카테고리의 다른 글
[백준 - JAVA] 2309번 : 일곱 난쟁이 (0) | 2021.08.27 |
---|---|
[백준 - JAVA] 6588번 : 골드바흐의 추측 (0) | 2021.08.27 |
[백준 - JAVA] 9613번 : GCD 합 (0) | 2021.08.25 |
[백준 - JAVA] 1934번 : 최소공배수 (0) | 2021.08.24 |
[백준 - JAVA] 2609번 : 최대공약수와 최소공배수 (0) | 2021.08.24 |