JAVA/수업 복습
자바 공부기록 16 - 이중 for문 예제
본이qq
2022. 4. 12. 17:00
●이중 for문
1
2
3
4
5
6
7
8
9
10
11
12
|
package days11;
public class ControllOp_For15 {
public static void main(String[] args) {
for(int i=1; i<=10; i++) {
for(int j=1; j<=10; j++) {
System.out.printf("#");
}
System.out.println();
}
|
cs |
-하위에 있는 for문 실행 x 10번
● 1부터 100까지 진행되는 반복실행문 안에서 1부터 100사이의 모든 소수(prime number) 를 출력
-1 부터 자기자신의 숫자까지 진행되는 반복실행문으로 두번째 반복실행 숫자로 모두 나눠보고
나누어 떨어진 횟수가 2회이면 소수인걸로 간주하여 출력
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
public static void main(String[] args) {
int cnt = 0;
for(int i=2; i<=100; i++) {
cnt = 0;
for(int j=2; j<=i; j++ ) {
if(i%j==0) cnt++;
}
if(cnt==2)System.out.printf("소수 : %d",i);
else System.out.printf("소수아님 : %d",i);
System.out.println();
}
|
cs |
여기서 cnt값을 다시 0으로 초기화해주지 않으면 잘못된 값이 나온다.
(두번째 반복실행문에서 나온 cnt값이 다시 반복실행문 안으로 들어가 값이 누적되기때문)