<목차>
0. 2단 만들어 보기
1. 1부터 9까지 증가하는 반복문 작성해보기
2. 2단 반복문 사용해보기
3. 2중 for문 구조 확인해보기
4. 2중 for문을 이용하여 2~9단 반복문 사용해보기
5. 가로로 표현해보기
0. 2단 만들어 보기
시스템 안에서(Console 창) 출력하는 Syste.out.println 문을 사용하여 2단을 입력하고 출력해 봅니다.
public class GoogooDan {
public static void main(String[] args) {
System.out.println("2 x 1 = " + 2*1);
System.out.println("2 x 2 = " + 2*2);
System.out.println("2 x 3 = " + 2*3);
System.out.println("2 x 4 = " + 2*4);
System.out.println("2 x 5 = " + 2*5);
System.out.println("2 x 6 = " + 2*6);
System.out.println("2 x 7 = " + 2*7);
System.out.println("2 x 8 = " + 2*8);
System.out.println("2 x 9 = " + 2*9);
}
}
<Result>
-> (How) 2단에서 앞에 2는 고정이고 나머지 1~9 까지 반복하는 숫자를 간편하게 입력하려면 ?
-> 반복문 for 이용하기
1. 1부터 9까지 증가하는 반복문 작성해보기
*반복문 사용 예시
public class GoogooDan {
public static void main(String[] args) {
for(int i = 1; i<=9; i++) {
System.out.println(i);
}
}
}
다음과 같은 소스를 입력하면, Console창에 다음과 같은 결과를 확인할 수 있습니다.
<Result>
2. 2단 반복문 사용해보기
이전에 1부터 9까지 증가하는 반복문을 토대로 구구단 2단을 반복문으로 작성해 보면 다음과 같습니다.
public class GoogooDan {
public static void main(String[] args) {
for(int i = 1; i<=9; i++) {
System.out.println("2 x " + i + " = " + 2*i);
}
}
}
<Result>
3. 2중 for문을 구조 확인하기
public class GoogooDan {
public static void main(String[] args) {
for(int i = 1; i<=9; i++) {
System.out.println(" i = " + i);
for(int j = 1; j <= 9; j++) {
System.out.println("j = " + j);
}
}
}
}
i가 1일때 j가 반복이 시작하고, j가 1 ~ 9까지 반복이 끝나면 다시 i가 2로 증가하고, j가 반복되는 것을 확인할 수 있습니다.
<Result>
4. 2중 for문을 이용하여 2~9단 반복문 사용해보기
public class GoogooDan {
public static void main(String[] args) {
for(int i = 2; i <= 9; i++) { //i = 단수 (2단 ~ 9단)
System.out.println(i + "단");
for(int j = 1; j <= 9; j++) { //j = 각 단 안에서 1~9까지 반복되는 수
System.out.println(i + " x " + j + " = " + i * j);
}
}
}
}
<Result>
5. 가로로 표현해보기
가로로 표현하는 것은 2중 for문의 구조를 확실하게 이해해야 작성할 수 있습니다.
Outter와 Inner를 어떻게 설정할 것인지 중요합니다.
먼저 결과는 다음과 같습니다. 한번 직접 작성해 보시길 바랍니다.
<Result>
.
.
.
.
.
.
.
.
.
.
.
방법은 여러가지 있지만, 어떤 것을 Outter로 잡을지, 어떤 것을 Inner로 잡을지는
Outter가 1단계 끝나는 것으로 잡는다고 생각하면 편합니다.
결과를 봤을때, 한줄이 끝났을 때가 Outter가 1단계 끝나는 것이므로
한 줄당 각 단수에 x 1이 오니깐 Outter를 1 ~ 9 까지 잡고 Inner를 단수로 잡았습니다.
코드를 보면 다음과 같습니다. Outter에 해당하는 i를 1 ~ 9로 잡고 (각 단 안에서 반복되는 수)
Inner에 해당하는 j를 단으로(2단 ~ 9단) 잡았습니다.
*그리고 j에 해당하는 구문을 i x j 에서 j x i 로 바꿨습니다.
<최종 소스코드>
public class GoogooDan {
public static void main(String[] args) {
System.out.println("##2단##\t\t##3단##\t\t##4단##\t\t##5단##\t\t##6단##\t\t##7단##\t\t##8단##\t\t##9단##\t\t");
for(int i = 1; i <= 9; i++) { //i = 각 단 안에서 1~9까지 반복되는 수
System.out.println("");
for(int j = 2; j <= 9; j++) { //j = 단수 (2단 ~ 9단)
System.out.print(j + " x " + i + " = " + j * i + "\t");
}
}
}
}
* \t는 줄 맞추기 할때 많이 사용됩니다. \t를 사용하지 않고 정렬을 하면 다음과 비슷한 결과가 나올 수 있습니다.
\t 비교를 위해 다음고 같은 소스를 작성했습니다.
System.out.println("한종혁");
System.out.println("한 종혁(한칸띄기)");
System.out.println("한 종혁(두칸띄기)");
System.out.println("한 종혁(세칸띄기)");
System.out.println("한 종혁(일곱칸띄기)");
System.out.println("한\t종혁(t한번사용)");
System.out.println("한\t\t종혁(t두번사용)");
<Result>
앞에 글자나 상황에 따라 조금 다르긴 하지만, 대부분 \t는 7칸 ~ 9칸 정도 띄어주는 것 같습니다.
그리고 단순히 띄어주는 것만이 아니라, 앞에 구구단 최종 결과처럼 간격을 정렬해 주는 효과도 볼 수 있습니다.
.
.
.
.
<최종 소스코드>
public class GoogooDan {
public static void main(String[] args) {
System.out.println("##2단##\t\t##3단##\t\t##4단##\t\t##5단##\t\t##6단##\t\t##7단##\t\t##8단##\t\t##9단##\t\t");
for(int i = 1; i <= 9; i++) { //i = 각 단 안에서 1~9까지 반복되는 수
System.out.println("");
for(int j = 2; j <= 9; j++) { //j = 단수 (2단 ~ 9단)
System.out.print(j + " x " + i + " = " + j * i + "\t");
}
}
}
}
<최종 Result>
If a man neglects education, he walks lame to the end of his life - <Plato>
사람이 교육을 게을리하면 절름발이로 생을 마감한다 - 플라톤
'Java' 카테고리의 다른 글
Java openjdk 버전업 (1.8 -> 11) (0) | 2022.12.30 |
---|---|
(Eclipse) Oracle DB 연동 (QuantumDB) (0) | 2022.08.09 |
(Eclipse) Java 콘솔(Console)에 한글 안나올때 대처방법 (1) | 2022.08.01 |