본문 바로가기

카테고리 없음

[Java] 백준 4101번 : 크냐?

문제

두 양의 정수가 주어졌을 때, 첫 번째 수가 두 번째 수보다 큰지 구하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 두 정수가 주어진다. 두 수는 백만보다 작거나 같은 양의 정수이다. 입력의 마지막 줄에는 0이 두 개 주어진다.

출력

각 테스트 케이스마다, 첫 번째 수가 두 번째 수보다 크면 Yes를, 아니면 No를 한 줄에 하나씩 출력한다.

예제 입력 1 복사

1 19
4 4
23 14
0 0

예제 출력 1 복사

No
No
Yes

 

정답코드 : while 문

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {    
    Scanner sc = new Scanner(System.in);

    while(true){
      int A = sc.nextInt();
      int B = sc.nextInt();
      
      if (A == 0 && B == 0) 
        break; 
      
      if(A>B)
        System.out.println("Yes");
      else
        System.out.println("No");

    } 
  }
}

 

정답코드 2: do - while

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {    
    Scanner sc = new Scanner(System.in);

    int A, B;
    do{
      A = sc.nextInt();
      B = sc.nextInt();

      if(A<B)
        System.out.println("No");
      else if(A==B && A !=0 && B!=0)
        System.out.println("No");
      else if(A>B)
        System.out.println("Yes");


      if (A == 0 && B == 0) 
        break; 
    } while (A != 0 || B != 0);
    sc.close();
  }
}

 

틀렸던 이유 : Yes/No로 출력해야되는데 "YES/NO"로 출력했다..

출력 형태를 잘 보자