IT 개발노트

for문 예제 (소수 구하기) 본문

알고리즘/JAVA

for문 예제 (소수 구하기)

limsungju 2019. 2. 8. 12:24

문제 : 2에서부터 입력된 어떤 수까지 내에 있는 소수를 찾는 프로그램을 작성하라.

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
package sungju.Java.Test1;
 
import java.util.Scanner;
 
public class Test1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a;
        System.out.print("수 입력 : ");
        a = sc.nextInt();
        int count=0;
 
        for(int i=2; i<=a; i++) { // 1은 소수가 아니므로 2부터 시작
            for(int j=2; j<=i; j++) {
                if(i%j ==0)  {
                    count ++;
                    }
                }
            // 소수는 1과 자기자신으로만 나눠지므로 자기자신으로 한번만 나눠질때 소수
            // 카운트가 1일때만 실행하고 카운트를 0으로 초기화해준다.
            if(count==1) {
                System.out.print(i+" ");
                }
            count=0;
        }
    }
}