1. 입력 값을 받아 해당 숫자의 약수 구하기
약수 : 어떤 자연수를 나누어떨어지게 하는 수
Scanner sc = new Scanner(System.in);
System.out.println("숫자을 입력하시오");
int num = sc.nextInt();
for(int i=1;i<=num;i++) { // 1자기 자신까지
if(num%i==0) { //나머지가 안남는 나눗셈을 한 그 숫자가 약수
System.out.println(i); // 해당 숫자를 찾을 때 마다 프린트
} // if문 탈출
} //for문 탈출 후 반복
2. 2 ~100 까지의 소수 구하기
소수 : 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수
int count =0;
for(int i=2; i<=100; i++) { // 2 ~ 100 이니까, i가 백이하의 소수인가까지 범위를 설정함.
for(int j=2; j<i; j++) { //i 의 약수를 구하기 위해 카운팅 하는 루프 범위는 i보다 작을때까지
if(i%j ==0) { //만약에 i와 j를 나눴는데 나머지가 0이면 이건 약수
count ++; // 그럴 때 마다 int 타입으로 선언 된 count 를 증가 시킴
} // if 문 빠져 나오기
} // 두번째 for 문도 빠져 나오기
if(count==0){ // 그 후 만약 count 가 0 이라면 해당 i 는 0으로 떨어져서 나뉘지 않는 소수 라는 것
System.out.print(i+" "); // i를 프린팅 해라 " " 대신 "\t" 써도 된다.
}
count=0; //count를 초기화시킨다.
//왜냐하면 위(if 문)에서 또 count를 ++하던가 가만히 냅두던가 해야해서
}//첫번째 for 문 빠져 나와서 또 비교~
'JAVA' 카테고리의 다른 글
[JAVA] 자바 제어문 : 반복문 (while) (0) | 2023.02.19 |
---|---|
[JAVA] 조건문 if 와 반복문 for 를 이용한 피보나치 수열 구하기 (0) | 2023.02.19 |
[JAVA] 반복문 for 를 이용한 피라미드 별 찍기 2 (0) | 2023.02.19 |
[JAVA] 반복문 for을 이용한 피라미드 별 찍기 (0) | 2023.02.19 |
[JAVA] 자바 제어문 : 반복문 (for) (0) | 2023.02.19 |