2 X 1 = 2

2 X 2 = 4

2 X 3 = 6

*

*

2 X 8 = 16

2 X 9 = 18

 

이런 형식의 구구단을 자바로 구현해보자 

구현하기 위해선 이중 for문을 사용해야 하는데 초보자인 경우

이중 for문을 처음에 이해하기 힘들었던 부분이 있을 수 있으니 최대한 쉽게 설명해보겠습니다~

 

초보자를 위한 쉬운 설명은 더보기 글을 클릭해보세요 ♡

더보기

위 구구단 식 처럼 2 X 1  = 2 라는 식이 나오려면 숫자 2와 숫자  1그리고 곱셈한 결과값인 2  총 3개의 숫자가 등장하는데요 

숫자 2를 쉽게 i라고 생각해봅시다. 

그리고 2는 정수니까 int i 라고 붙이면 int i = 2; 

숫자 1도 이런식으로 하면 int j = 1; 이 됩니다.

 

구구단에서 한 개의 단이 다 완료 될때까지 i의 값은 계속 2로 고정이 되어있지만 j는 1에서 9까지 계속 증가되는 걸 알 수 있는데요.

즉 i가 2인 동안 j는 1씩 증가해야하는 식을 만들어야 된다는 소리입니다.

for ( int i = 2; i <= 9; i ++) {  
	for ( int j = 1; j <= 9; j ++) {
	}
}

여기서 for는 반복문으로 ~동안이라고 생각하시면 됩니다. 

int i =2; i <= 9; i ++ 을 풀어쓰면 i의 값이 범위 2에서 9까지 +1씩 증가하는다는 의미로 

앞에 for와 만나면 i의 값이 범위 2에서 9까지 +1씩 증가하는동안이 되겠죠? 

그리고 밑에 또 for가 있네요

j가 1부터 9까지 +1씩 증가하는 동안으로 해석할 수 있는데요

위에 i라는 for안에 j가 들어가 있기 때문에 i가 2인 동안에 j가 1부터 9까지라는 범위를 다 완료하여야 j의 for 반복문을 벗어날 수 있습니다.  

만약 i가 2이고 j가 1부터 9까지 완료를 한 경우에는 j의 for문을 벗어나서 다시 제일 위 i의 for문으로 올라가서 i가 1 증가한 i=3의 반복문이 시작됩니다. 

i=3이 되고 다시 j의 반복문이 시작되면서 i=3 , j=1~9까지 반복을 하게 되는 거죠

 

 

package double_for;

public class gugudan {

	public static void main(String[] args) {
		for ( int i = 2; i <= 9; i ++ ) {
			for ( int j = 1; j <=9; j ++) {
			 	System.out.println(i + "*" + j + "=" + (i*j));
			}
			System.out.println("-----------------");
		}
	}

}

이렇게 작성을 해주면 아래와 같은 결과가 콘솔창에서 출력이 되는 걸 확인할 수 있다

복사했습니다!