티스토리 뷰

Java

Java(조건문 if, 반복문 for)

yoooon1212 2024. 4. 11. 13:31

조건문이란?

프로그래밍에서 특정 조건을 평가하고, 그 결과에 따라 다른 실행 흐름을 따르도록 하는 구문

즉, 조건문을 사용하면 주어진 조건이 참(true)일 때와 거짓(false)일 때 수행할 작업을 다르게 지정할 수 있음.

 

1. if문 문법

if(조건식){
  수행문;     
  }
// 조건식이 '참'인 경우(조건에 맞는 경우) 수행문이 수행됨  
// 조건식이 '참'이 아닌 경우(조건에 맞지 않는 경우) 수행문이 수행되지 않음

if문 단독은 수행될 수도, 안 될 수도 있음.

 

 

예시1)

boolean flag = true; 
if(flag) {
  System.out.println("출력됨");
  flag = false; 
} // end of if 
System.out.println("코드가 여기까지 내려옴 : " + flag);

flag 자체가 true 여서 출력된 후 false로 if 문에서 벗어나 코드가 아래로 내려가 false가 출력됨.

 

 

예시2) 

boolean flag = false; 
if(flag) {
  System.out.println("출력됨");
  flag = true; 
} // end of if 
System.out.println("코드가 여기까지 내려옴 : " + flag);

if문의 수행구문 내의 flag가 true 지만 if문 자체가 false라서 출력되지 않고, 코드가 내려간 후 수행문의 flag에 false가 출력됨.

 

 

2. if - else문 문법(둘 중 하나는 반드시 수행됨)

if(조건식) {
    수행문1;   // 조건식이 '참'인 경우에 수행됨
} else {
    수행문2;    // 조건식이 '참'이 아닌 경우에 수행됨
}

 

 

 

3.  if - else if - else문 문법(조건 여러 개)

(마지막에 디폴트 값 else를 주면 반드시 수행되고 아니면 수행안 함)

 if(조건식1) {
      수행문1;        // 조건식1이 '참'인 경우 수행하고 전체 조건문을 빠져나감
  } else if(조건식2) { 
      수행문2;        // 조건식2이 '참'인 경우 수행하고 전체 조건문을 빠져나감
  } else if(조건식3) {
      수행문3;        // 조건식3이 '참'인 경우 수행하고 전체 조건문을 빠져나감
  } else {
      수행문4;        // 위 조건이 모두 해당되지 않는 경우 수행됨 (디폴트 조건)
  }
      수행문5;       // if-else if-else 문이 끝나면 수행됨

  // 조건식2가 만족되면 수행문2 -> 수행문5 순으로 수행됨

 

 

 

예시) 

int age = 17; 
		
// if else if else 사용시 조건식에 범위 점차 크게 설정해야 한다. 
if(age <= 3) {
	System.out.println("학교에 아직 다니지 않습니다.");
} else if(age <= 13) {
	System.out.println("초등학교에 다니고 있습니다.");
} else if(age <= 16) {
	System.out.println("중학교에 다니고 있습니다.");
} else {
	System.out.println("고등학교 이상 다니거나 졸업을 했네요.");
}

 

 

4. for 반복문

for(초기화식; 조건식; 증감식){
수행문;
}

 

 

 

예시) 

for(int i = 0; i < 10; i++) {
  System.out.println(i);			
}

i 변수에 0 ~ 9까지 들어감. 

 

아래 그림의 수행 순서를 적용하면 

  1. i = 0(초기화식)
  2. i <10 (조건식)  (true임)
  3. i가 0으로 출력됨.
  4. i가 1 증가함.(증감식)
  5. i가 1이 됨. -> 2 ~ 5번 반복함.
  6. i가 10일 경우 조건식 false로 반복이 멈춤.

<for문의 수행 순서>

 

 

 

 

예시 1)

구구단 2단을 출력하시오.

int num = 2;
		System.out.println(num + " * 1 = " + (num * 1));
		System.out.println(num + " * 2 = " + (num * 2));
		System.out.println(num + " * 3 = " + (num * 3));
		System.out.println(num + " * 4 = " + (num * 4));
		System.out.println(num + " * 5 = " + (num * 5));
		System.out.println(num + " * 6 = " + (num * 6));
		System.out.println(num + " * 7 = " + (num * 7));
		System.out.println(num + " * 8 = " + (num * 8));
		System.out.println(num + " * 9 = " + (num * 9));

이러한 반복적인 코드의 패턴을 파악하여 for 문을 적용한다.

num = 3; 
for(int i = 1; i < 10; i++) {
	System.out.println(num + " * "+ i + " = " + (num * i));
}

이는 for문을 적용하여 구구단 3단을 출력한 것이다.

1 ~ 9까지의 수는 변수 i를 적용한다.

 

3 * 1 = 3

3 * 2 = 6 

등등으로 출력된다.

 

 

예시 2)

 

print() : 줄바꿈 없이 가로로 한 줄에 이어져서 출력됨.
println() : 줄바꿈함. 세로로 출력됨.

 

for(int i = 0; i <3; i++) {
for(int j = 0; j <3; j++) {
 System.out.print(j);
}
 System.out.println();
}

이는 이중 for문을 사용하였다.

변수 j는 0,1,2까지 줄바꿈 없이 가로로(print) 나열함.(안쪽 for)

변수 i는 변수 j 값을 세로로(println) 3번 나열하고, 값 입력 없이 틀을 만들어줌.(바깥쪽 for)

=> 012

     012

     012

이렇게 출력됨.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함