본문 바로가기

[JAVA]

[JAVA]9월 9일 선택과 반복, 조건문, if else 문, switch 문

if - else 문

if(조건식)

{                       //복합문 시작                     

문장1;                //조건식이 참이면 실행된다.

}                       //복합문 종료

else

{

문장2;               //조건식이 거짓이면 실행된다.

}

 

복합문 : 중괄호를 사용하여 문장들을 그룹핑하는 것.

 

 

if else 문을 사용한 예제!

물건가격이 100원이다. 그런데 만약 10개 이상사면 10%할인해준다.

 public class Test {

 public static void main(String[] args){

  final int RATE = 100;       //물건가격 변하지 않으니까 상수로!
  int count;                      //물건수
  final double dis = 0.9;     //할인적용 마찬가지로 10% 라는 할인률이 변하지 않기때문에 상수!
  int pay;                         //지불해야할 돈.
  Scanner scan = new Scanner(System.in);
  
  System.out.println("구입한 물건의 개수를 입력하세요.");
  count = scan.nextInt();
  
  if(count >= 10)          //만약 입력한 값이 10 이상이면 if 문아래 실행

{
   pay = (int)(RATE * count * 0.9); // pay = RATE * count * dis;

//10% 할인이니까 (물건가격 * 개수 * 0.9)

}
  else                       //만약 입력한 값이 10보다 작으면 else 문 실행

{
   pay = RATE * count;

}
  System.out.println("총계산액은" + pay + "입니다.");

}

}

 

 

*중첩 if

if 문에 다시 if 문이 포함.

ex)

if(조건식 1) {      //조건식이 맞으면 if문 으로 들어간다

if(조건식 2) { // 들어왔는데 한번더 조건문이 걸린 if 문이 있다. 조건식 2가 맞으면 if문 안으로 들어간다!

문장;

}

}

 

 

*연속적인 if (else if)

더많은 조건식을 걸고 싶다면 아래와 같이 하면된다.

if(조건식1)

문장1;

else if(조건식2)

문장2;

else if(조건식3)

문장3;

else if(조건식4)

문장4;

....

....

..

else

문장n;

 

else if 를 활용한 예제!

90점이넘으면 A, 80점이 넘으면 B, 70점이 넘으면 C, 60점이 넘으면 D, 그아래는 F

 public class Test {

public static void main(String[] args){

  int score;
  Scanner scan = new Scanner(System.in);
  System.out.println("점수를 입력하세요.");
  score = scan.nextInt();
  if(score > 90)
  {
   System.out.println("A입니다.");  
  System.out.println("참 잘했어요");
  }
  else if(score > 80)
    System.out.println("B입니다.");   
  else if(score > 70)
    System.out.println("C입니다.");   
  else if(score > 60)                      
    System.out.println("D입니다.");    
  else                                    
    System.out.println("F입니다.");  
}

}      

 

90점이 넘는 조건의 if 문에 들어간 점수를 받은 사용자는 복합문으로

A입니다.

참 잘했어요

라고 출력됨.

 

 

*switch

여러 가지 경우 중에서 하나를 선택하는데 사용.

 

switch 를 사용한 예제!

public class Test {

public static void main(String[] args){

  int number;
  
  Scanner scan = new Scanner(System.in);
  System.out.println("숫자를 입력하세요.");
  number = scan.nextInt();
  switch (number){
  case 0:    //입력한 숫자가 0이면 이쪽으로 들어와서 아래 문장 실행.
      System.out.println("0입니다");
      break;   //break; 문에 걸리면 switch 문 밖으로 나간다. break를 거는이유는

                  //break 를 해주지 않으면 case1로 내려가고 계속 내려가기 때문에

                  // 각 case 마다 break를 걸어놨다.
  case 1:
       System.out.println("하나");
       break;
  case 2:
       System.out.println("둘");
       break;
  default:
       System.out.println("3이상 숫자~");
       break;

  }

}

}