728x90
반응형
안녕하세요~ 자바를 공부하시는 분들이라면, for문에 대해서는 이미 알고 있을 것입니다.
이중 for문은, for문 안에 또 다른 for문을 넣어 반복을 수행하는 구문입니다. 이를 통해 복잡한 반복문 패턴을 간단하게 처리할 수 있습니다. 이번 블로그에서는 이중 for문을 사용하는 방법과 예시를 살펴보겠습니다. 이제, 함께 자바의 이중 for문을 배워봅시다!
중첩된 형태의 반복문
// 중첩된 형태의 반복문
// - 제어문은 내부에 다른 제어문을 포함할 수 있습니다.
// - 반복문은 분기문 뿐만아니라 반복문을 내부에 포함시킬 수 있습니다.
// - 외부의 반복문이 1회전 할 때, 내부의 반복문은 전체를 실행하는 구조입니다.
public class Control_Statement_For_09 {
public static void main(String[] args) {
// 외부의 반복문 - 기준변수 i
// - 외부의 반복문은 내부의 반복문이 완전히 종료되어야만 1번이 수행됩니다.
for( int i = 1 ; i <= 3 ; i++ ) {
// 내부의 반복문 - 기준변수 j
// - 내부의 반복문은 외부의 반복문이 1번 실행될 때, 전체가 실행됩니다.
for( int j = 1 ; j <= 3 ; j++ ) {
System.out.printf("i = %d, j = %d\n", i, j);
}
}
}
}
중첩된 반복문을 사용하는 예제
// 중첩된 반복문을 사용하는 예제
// - 구구단
// 2 * 1 = 2
// 2 * 2 = 4
// ...
// 2 * 9 = 18
// 3 * 1 = 3
// 3 * 2 = 6
// ...
// 3 * 9 = 27 ...
public class Control_Statement_For_10 {
public static void main(String[] args) {
for( int i = 2 ; i < 10 ; i++ ) {
for( int j = 1 ; j < 10 ; j++ ) {
System.out.printf("%d * %d = %d\n", i, j, i*j);
}
}
}
}
다음과 같은 형태로 구구단을 출력하세요.
// 다음과 같은 형태로 구구단을 출력하세요.
/*
2단을 출력합니다.
2 * 1 = 2
2 * 2 = 4
...
2 * 9 = 18
3단을 출력합니다.
3 * 1 = 3
3 * 2 = 6
...
3 * 9 = 27
...
*/
// 홀수에 해당되는 단만 출력하도록 코드를 수정하세요.
// 다음과 같은 형태로 구구단을 출력하세요.
/*
2단을 출력합니다.
2 * 2 = 4
2 * 4 = 8
...
2 * 8 = 16
3단을 출력합니다.
3 * 1 = 3
3 * 3 = 9
...
3 * 9 = 27
4단을 출력합니다.
4 * 2 = 8
4 * 4 = 16
...
4 * 8 = 32
...
*/
public class Control_Statement_For_10_EX {
public static void main(String[] args) {
for( int i = 2 ; i < 10 ; i++ ) {
// if( i % 2 == 0 )
// continue;
System.out.printf("%d단을 출력합니다.\n", i);
for( int j = 1 ; j < 10 ; j++ ) {
/*
// 짝수단은 짝수만 곱셈
boolean flag_1 = i % 2 == 0 && j % 2 == 0;
// 홀수단은 홀수만 곱셈
boolean flag_2 = i % 2 == 1 && j % 2 == 1;
if( flag_1 || flag_2 )
*/
if( i % 2 == j % 2 )
System.out.printf("%d * %d = %d\n", i, j, i*j);
}
System.out.println();
}
}
}
아래와 같은 형태로 출력될 수 있게 코드를 작성하세요 별그리기
(중첩된 반복문을 사용)
// 아래와 같은 형태로 출력될 수 있게 코드를 작성하세요
// (중첩된 반복문을 사용)
/*
case 1
*
**
***
****
*****
case 2
*****
****
***
**
*
case 3
*
**
***
****
*****
*/
public class Control_Statement_For_11_EX {
public static void main(String[] args) {
// 디버깅
// - 코드의 실행 과정을 IDE을 통해서 실시간으로 확인할 수 있는 방법
// - 에러를 수정하기 위해서 참고하는 방법
// - Break Point(중지점 / 특정 실행문을 지정함)
for( int i = 1 ; i <= 5 ; i++ ) {
for( int j = 1 ; j <= i ; j++ ) {
System.out.print("*");
}
System.out.println();
}
System.out.println();
for( int i = 5 ; i >= 1 ; i-- ) {
for( int j = 1 ; j <= i ; j++ ) {
System.out.print("*");
}
System.out.println();
}
System.out.println();
for( int i = 1 ; i <= 5 ; i++ ) {
for( int j = 1 ; j <= 5 ; j++ ) {
if( j > (5-i) )
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
}
System.out.println();
}
}
728x90
반응형
'개발 > JAVA' 카테고리의 다른 글
자바 반복문 do ~ while문 (0) | 2020.06.14 |
---|---|
자바 - 반복문 while문 (0) | 2020.06.14 |
자바 - 반복문 for 문, continue (0) | 2020.06.14 |
자바 - 반복문 for 문 (1) (0) | 2020.06.14 |
자바 - 제어문 switch문 (0) | 2020.06.14 |