for(초기값1; 조건식1; 증감식1) { 수행될 코드1; for(초기값2; 조건식2; 증감식2) { 수행될 코드2; } 수행될 코드3; }
[예시 1] 구구단 모두 출력하기
for(int dan = 2 ; dan <= 9 ; dan++) { // 2 ~ 9 단까지 차례로 증가
// 안쪽 for문이 반복하면서 하나의 단을 한 줄로 출력
for(int num = 1 ; num <=9 ; num++) { // 각 단에 곱해질 수 1~9 까지 차례대로 증가
System.out.printf("%2d X %2d = %2d ", dan, num, dan * num);
}
System.out.println(); // 아무 내용 없는 println() == 줄바꿈
}
[예시 2] 구구단 역순 출력
9단 -> 2단 까지 역방향
곱해지는 수는 1 -> 9까지 정방향
for(int dan = 9 ; dan >= 2 ; dan--) { // 단 9 -> 2 역방향
for(int num = 1 ; num <= 9 ; num++) { // 수 1 -> 9 정방향
System.out.printf("%d X %d = %2d ", dan, num, dan * num);
} // 한 단의 출력 종료
System.out.println(); // 줄바꿈
}
[예시 3] 2중 for문을 이용해서 다음 모양을 출력하시오
12345
12345
12345
12345
12345
for(int x = 1 ; x <= 5 ; x++) { // 5 바퀴 반복하는 for문
for(int i = 1 ; i <= 5 ; i++) { // 12345 한 줄 출력하는 for문
System.out.print(i);
}
System.out.println();
}
[예시 4] 2중 for문을 이용해서 다음 모양을 출력하시오
54321
54321
54321
for(int x = 1 ; x <= 3 ; x++) {
for(int i = 5 ; i >= 1 ; i--) {
System.out.print(i);
}
System.out.println();
}
[예시 5] 2중 for문을 이용해서 다음 모양을 출력하시오
1
12
123
1234
for(int x = 1 ; x <= 4 ; x++) { // 줄 반복
for(int i = 1 ; i <= x ; i++) { // 출력 반복
System.out.print(i);
}
System.out.println();
}
// x가 1일 때 i == 1
// x가 2일 때 i == 1, 2
// x가 3일 때 i == 1, 2, 3
// x가 4일 때 i == 1, 2, 3, 4
[예시 6] 2중 for문을 이용해서 다음 모양을 출력하시오
4321
321
21
1
for(int x = 4 ; x >= 1; x--) { // 줄 반복
for(int i = x ; i >= 1 ; i--) { // 숫자 출력
System.out.print(i);
}
System.out.println();
}
// x가 4일 때 4 3 2 1
// x가 3일 때 3 2 1
// x가 2일 때 2 1
// x가 1일 때 1
[예시 7] count (숫자 세기)
1부터 20까지 1씩 증가하면서 3의 배수의 총 개수 출력
3 6 9 12 15 18 : 6개
int count = 0; // 3의 배수의 개수를 세기 위한 변수
int sum = 0; // 3의 배수의 합계를 구하기 위한 변수
for(int i = 1 ; i <= 20 ; i++) {
if(i % 3 == 0) { // 3의 배수
System.out.print(i + " ");
count++; // if문이 동작할 때마다 1씩 증가
sum += i; // 3의 배수 누적
}
}
System.out.println(": " + count + "개");
System.out.println("3의 배수의 합계 : " + sum);
[예시 8] 2중 for문과 count를 이용해서 아래 모양 출력하기
1 2 3 4
5 6 7 8
9 10 11 12
int count = 0;
for(int x = 1 ; x <=3 ; x++) { // 3줄
for(int i = 1 ; i <= 4 ; i++) { // 4칸
count++;
System.out.printf("%3d", count);
}
System.out.println();
}