[Java] 백준 1978번
백준 1978번
소수 찾기
문제
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
입력
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
출력
주어진 수들 중 소수의 개수를 출력한다.
예제
코드
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int count = 0;
for(int i=0; i<N; i++) {
boolean check = true;
int num = sc.nextInt();
if(num == 1)
continue;
for(int j = 2; j < num; j++) {
if(num % j == 0) {
check = false;
break;
}
}
if(check)
count++;
}
sc.close();
System.out.println(count);
}
}
풀이
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
주어진 수들 중 소수의 개수를 출력한다.
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int count = 0;
for(int i=0; i<N; i++) {
boolean check = true;
int num = sc.nextInt();
if(num == 1)
continue;
for(int j = 2; j < num; j++) {
if(num % j == 0) {
check = false;
break;
}
}
if(check)
count++;
}
sc.close();
System.out.println(count);
}
}
소수는 1과 자기 자신으로 나누었을 때만 0이 나오는 수 들이다. 따라서, for문을 활용해서 2부터 자기 자신수 직전까지를 반복시켜서 그 중 % 계산 시, 0이 한번도 안나오면 소수이다.
Author And Source
이 문제에 관하여([Java] 백준 1978번), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yun12343/Java-백준-1978번저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)