JAVA 문제풀이
반복문 실습문제.12(어려움)
Rocomi
2024. 6. 20. 15:00
2부터 사용자가 입력한 수까지의 소수를 모두 출력하고 소수의 개수를 출력하세요.
단, 입력한 수가 2보다 작은 경우 “잘못 입력하셨습니다.”를 출력하세요.
ex.
숫자 : 11
2 3 5 7 11
2부터 11까지 소수의 개수는 5개입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | package com.kh.practice.chap02.loop; import java.util.Scanner; public class LoopPractice { public void practice017() { Scanner sc = new Scanner(System.in); System.out.print("숫자 : "); int num = sc.nextInt(); int i; int k = 1; if (num < 2) { System.out.println("잘못 입력하셨습니다."); } if (num == 2) { System.out.println("2"); System.out.printf("2부터 %d까지의 소수의 개수는 %d개 입니다.", num, 1); } System.out.print("2"); for (int j = 2; j <= num; j++) { for (i = 2; i < j; i++) { // 소수가 아닐경우 if (j % i == 0) { break; } else if (i == j - 1) { System.out.print(" " + j); k++; } } if (j == num) { System.out.printf("\n2부터 %d까지의 소수의 개수는 %d개 입니다.", num, k); } } } } | cs |