-
02.21 제어구조, for문학원일지/class 2023. 2. 21. 11:27
review
제어구조는 연습을 많이하자~
[제어구조]
제어문의 종류
while, if, else, else-if
-사용하는 패턴들을 체크할 것.
무한반복
특정수만큼 반복
조건에 따라서 반복
특정수만큼 반복하는 코드의 패턴
: 특수의 반복을 위한 조건 3가지.
1) 초기화 : int x = 0
2) 조건 : x<반복횟수
3) 증감 : x++
20번 반복하는 코드를 작성하려고 한다고 할 때, 그 기본 코드의 틀은 어떻게 될까?
int x=0;
while(x<20) {
x++;
}
for문
반복흐름
특정수 만큼 반복 (세가지 조건을 쉽게 보게끔 한것.)
while문을 개선한것.
for (초기화; 조건; 증감)
특정수만큼 반복 할 때는 while보다는 for가 좀 더 간편
지역화
스택이라는 것을 연결하여, 중괄호{}를 감싸게 되면 밖에서 볼 수 없게하여 충돌하지 않게 할 수 있음.
for문 또한, 중괄호{}안에서 사용하기 때문에 지역변수라고 한다. (지역 안에서만 쓸 수 있는 변수)
{} -> 안써도 되는건 안쓰는게 좋다...?
출력하기 :
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
for(int i=1; i<11; i++) if(i==1) System.out.print("*"); else if (i==10) System.out.print("*"); else System.out.print("ㅤ");
if문 더 간단하게 수정하기
for(int i=0; i<10; i++) if(i==0 || i==9) System.out.print("*"); else System.out.print("ㅤ");
for을 여러번 반복할 수 있는 방법
(같은 for를 반복하지 않고 기존의 for문을 새로운 for문 안에 넣어주면 됨!)
for(int x=0; x<5; x++) for(int i=1; i<11; i++) if(i==1 || i==10) System.out.print("*"); else System.out.print("ㅤ");
console
*ㅤㅤㅤㅤㅤㅤㅤㅤ**ㅤㅤㅤㅤㅤㅤㅤㅤ**ㅤㅤㅤㅤㅤㅤㅤㅤ**ㅤㅤㅤㅤㅤㅤㅤㅤ**ㅤㅤㅤㅤㅤㅤㅤㅤ*
출력하기 :
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
*ㅤㅤㅤㅤㅤㅤㅤㅤ*
for(int x=0; x<5; x++) for(int i=1; i<11; i++) if(i==1) System.out.print("*"); else if (i==10) System.out.println("*"); else System.out.print("ㅤ");
<↑ 혼자 생각한것 ↑>
for(int x=0; x<5; x++) { for(int i=1; i<11; i++) if(i==1 || i==10) System.out.print("*"); else System.out.print("ㅤ"); System.out.println(); }
if문을 쪼개지 않고 하나의 for문 끝난 후에 공백 만들기 하면 됨
출력하기 :
*ㅤㅤㅤㅤㅤㅤㅤㅤ*@
*ㅤㅤㅤㅤㅤㅤㅤㅤ*@
*ㅤㅤㅤㅤㅤㅤㅤㅤ*@
*ㅤㅤㅤㅤㅤㅤㅤㅤ*@
*ㅤㅤㅤㅤㅤㅤㅤㅤ*@
for(int x=0; x<5; x++) { for(int i=1; i<11; i++) if(i==1 || i==10) System.out.print("*"); else System.out.print("ㅤ"); System.out.println("@"); }
<↑ 혼자 생각한것 ↑>
출력하기 :
*ㅤㅤㅤㅤㅤㅤㅤ#*@
*ㅤㅤㅤㅤㅤㅤㅤ#*@
*ㅤㅤㅤㅤㅤㅤㅤ#*@
*ㅤㅤㅤㅤㅤㅤㅤ#*@
*ㅤㅤㅤㅤㅤㅤㅤ#*@
for(int x=0; x<5; x++) { for(int i=1; i<11; i++) if(i==1 || i==10) System.out.print("*"); else if (i==9) System.out.print("#"); else System.out.print("ㅤ"); System.out.println("@"); }
<↑ 혼자 생각한것 ↑>
*ㅤㅤㅤㅤㅤㅤㅤㅤㅤ
ㅤ*ㅤㅤㅤㅤㅤㅤㅤㅤ
ㅤㅤ*ㅤㅤㅤㅤㅤㅤㅤ
ㅤㅤㅤ*ㅤㅤㅤㅤㅤㅤ
ㅤㅤㅤㅤ*ㅤㅤㅤㅤㅤ
for(int x=0; x<5; x++) { for(int i=0; i<10; i++) if(i==x) System.out.print("*"); else System.out.print("ㅤ"); System.out.println("");
출력하기
*ㅤㅤㅤㅤㅤㅤㅤㅤㅤ|
ㅤ*ㅤㅤㅤㅤㅤㅤㅤㅤ|
ㅤㅤ*ㅤㅤㅤㅤㅤㅤㅤ|
ㅤㅤㅤ*ㅤㅤㅤㅤㅤㅤ|
ㅤㅤㅤㅤ*ㅤㅤㅤㅤㅤ|
ㅤㅤㅤㅤㅤ*ㅤㅤㅤㅤ|
ㅤㅤㅤㅤㅤㅤ*ㅤㅤㅤ|
ㅤㅤㅤㅤㅤㅤㅤ*ㅤㅤ|
ㅤㅤㅤㅤㅤㅤㅤㅤ*ㅤ|
ㅤㅤㅤㅤㅤㅤㅤㅤㅤ*|
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
for(int x=0; x<10; x++) { for(int i=0; i<10; i++) if(i==x) System.out.print("*"); else System.out.print("ㅤ"); System.out.println("|"); } for(int j=0; j<10; j++) System.out.print("ㅡ");
출력하기
*ㅤㅤㅤㅤㅤㅤㅤㅤㅤ|
ㅤ*ㅤㅤㅤㅤㅤㅤㅤㅤ|
ㅤㅤ*ㅤㅤㅤㅤㅤㅤㅤ|
ㅤㅤㅤ*ㅤㅤㅤㅤㅤㅤ|
ㅤㅤㅤㅤ*ㅤㅤㅤㅤㅤ|
ㅤㅤㅤㅤㅤ*ㅤㅤㅤㅤ|
ㅤㅤㅤㅤㅤㅤ*ㅤㅤㅤ|
ㅤㅤㅤㅤㅤㅤㅤ*ㅤㅤ|
ㅤㅤㅤㅤㅤㅤㅤㅤ*ㅤ|
ㅤㅤㅤㅤㅤㅤㅤㅤㅤ*|
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ|
for(int x=0; x<11; x++) { for(int i=0; i<10; i++) if(i==x) System.out.print("*"); else if (x==10) System.out.print("ㅡ"); else System.out.print("ㅤ"); System.out.println("|"); }
'학원일지 > class' 카테고리의 다른 글
02.17 문자열 단위로 입력받는 응용객체, 연산자 (0) 2023.02.17 02.16 문자열 출력, 숫자 출력, 콘솔 입력 (0) 2023.02.16