글 작성자: 취업중인 피터팬
728x90
기본 환경
JDK : 1.8.0_261 버전
JRE : 1.8.0_261 버전
JAVA VERSION : 8 업데이트 261
Eclipse IDE VERSION : 2020-06버전

 

시나리오

boolean이 반환타입인 isPrimeNumber함수를 만들어 1부터 100까지 숫자를 비교해 소수인지 아닌지 가려낸후 main 함수에서 소수를 모두 출력하는 프로그램을 만들어라


 

 

다음과 같은 결과가 나와야 합니다.

 

 

정답
package ex05method;

public class QuFindPrimeNumber {

	public static boolean isPrimeNumber(int num) {

		if (num == 1) {
			// 1은 소수가 아니므로 무조건 false반환
			return false;
		}

		else {
			
			for (int i = 2; i < num; i++) {
				/*
				1과 자기 자신을 제외한 숫자로 나눠서 떨어지면 소수가 아니므로 
				그 이후는 검사할 필요가 없다. 판단되는 즉시 false를 반환하고 종료한다.
				 */
				if (num % i == 0) {
					return false;
				}

			}
			return true;

		}

	}

	public static void main(String[] args) {
		for (int i = 1; i <= 100; i++) {
			if (isPrimeNumber(i) == true) {
				System.out.println(i);
			}
		}
	}
}