package day09;
import java.io.*;
public class Day09_01 {
//가위 바위 보 게임 => switch문을 이용해서 풀어보기.
public static void main(String[] args) throws IOException{
boolean sw = true;
while(sw) {
System.out.println("==========");
System.out.println("가위 바위 보 게임 v1.0");
System.out.println("----------");
System.out.println("1.가위 2.바위 3.보 4.종료");
int user=0;
do {
user = System.in.read()-48;
System.in.skip(2);
} while (!(1<=user && user<=4));
if (user == 4) {
System.out.println("프로그램 종료");
System.exit(0);
}
int com = (int) (Math.random()*3 +1);
System.out.println("사용자 = " +user);
System.out.println("컴퓨터 = " +com);
// switch (user - com) {
// case 0 : System.out.println("무승부");
// break;
//
// case -2 : case 1 : System.out.println("사용자 승");
// break;
//
// case -1 : case 2 : System.out.println("컴퓨터 승");
// break;
if (user == com) {
System.out.println("무승부");
}else if ((user+1)%3 == com%3) {
System.out.println("컴퓨터 승");
}else {
System.out.println("사용자 승");
}
}
}
}
사용자가 1입력 -> 컴퓨터 1입력 ==> 사용자 = 컴퓨터
따라서 무승부.
사용자가 2입력 -> 컴퓨터 2입력 ==> 사용자 = 컴퓨터
따라서 무승부.
사용자가 3입력 -> 컴퓨터 3입력 ==> 사용자 = 컴퓨터
따라서 무승부.
=================================================== 사용자 값 = 컴퓨터 값은 무승부.
사용자가 1입력 -> 컴퓨터 2입력 ==> 사용자 - 컴퓨터 = -1
따라서 컴퓨터 승.
사용자가 2입력 -> 컴퓨터 3입력 ==> 사용자 - 컴퓨터 = -1
따라서 컴퓨터 승.
사용자가 3입력 -> 컴퓨터 1입력 ==> 사용자 - 컴퓨터 = 2
=================================================== 컴퓨터 승.
사용자가 1입력 -> 컴퓨터 3입력 ==> 사용자 - 컴퓨터 = -2
따라서 사용자 승.
사용자가 2입력 -> 컴퓨터 1입력 ==> 사용자 - 컴퓨터 = 1
따라서 사용자 승.
사용자가 3입력 -> 컴퓨터 2입력 ==> 사용자 - 컴퓨터 = 1
따라서 사용자 승.
=================================================== 사용자 승.
이걸 이용해서 스위치문으로 코드를 짤 수 있다.
나머지 정리를 활용해서도 코드 짤 수 있음!
'Java' 카테고리의 다른 글
StringTokenizer 사용법 (0) | 2022.06.30 |
---|---|
JAVA - 배열, 배열이란? (0) | 2022.06.13 |
가위바위보 게임( do-while로 만들기) (0) | 2022.06.12 |
첫번째 과제 (가위 바위 보 게임) (0) | 2022.06.10 |
JAVA - 예제 (While문 , Do-While문) (0) | 2022.06.09 |