1936.1대1가위바위보

Muhly·2023년 3월 23일
0

sw expert

목록 보기
2/5

안녕하세요🤗10기ssafy를 목표로 열심히 달리고 있는 Muhly라고 합니다.저의 벨로그는 저의 창작물도 있겠지만 다른 유명한 강사님들과 블로거분들의 글들이 많이 포함하고 있습니다.이 벨로그는 저의 스터디 노트와 일상 기록용입니다.같이 공부하실 분 있으시면 연락 부탁드려요

1936.1대1가위바위보

A와 B가 가위바위보를 하였다.

가위는 1, 바위는 2, 보는 3으로 표현되며 A와 B가 무엇을 냈는지 입력으로 주어진다.

A와 B중에 누가 이겼는지 판별해보자. 단, 비기는 경우는 없다.

[입력]

입력으로 A와 B가 무엇을 냈는지 빈 칸을 사이로 주어진다.

[출력]

A가 이기면 A, B가 이기면 B를 출력한다.

✏️나의 오답

    Scanner in = new Scanner(System.in);

      int A = in.nextInt();
       int B = in.nextInt();

      if(A>B){
            System.out.println(A);
        }else {
            System.out.println(B);
        }

✏️정답

package D1;

import java.util.Scanner;

public class _1936 {
    public static void main(String[] args) {
  

        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        int b = in.nextInt();
        String winner;

        if( a == 1) {
            winner  = (b == 2 ? "B": "A");
        }else if(a == 2){
            winner = (b == 3 ? "B" : "A");
        }else{
            winner = (b == 1? "B" : "A");
        }

        System.out.println(winner);
    }
}

❗️나의 오답 원인분석

1️⃣ A,B는 Scanner를 입력받는 대상이 아닌 winner의 주체가 되는 대상이다.그러니 A,B에게 Scanner로 입력받아서 안되고 그들의 부하 a,b를 만들어 그들이 Scanner에게 입력받도록 하자.

2️⃣ 그렇다면 a가 1(가위), 2(바위), 3(보)일때를 조건문으로 나눈다.

3️⃣ 각각의 조건문에 winner에 관한 삼항연산자를 걸어 참과 거짓일 경우로 구분한다.

profile
https://muhlysstudynote.tistory.com/-> 블로그 이전하였습니다

0개의 댓글