알고리즘/코딩도장

가~위 바위~ 보!

개발계발게발 2021. 5. 31. 15:15
반응형

코딩도장 - 가~위 바위~ 보!

 

코딩도장 - 가~위 바위~ 보!

 

package may31;

import java.util.Arrays;
import java.util.Scanner;

public class Test01 {
	public static void main(String[] args) {		
		Scanner sc = new Scanner(System.in);
		System.out.println("몇판 하시겠습니까?");//게임 횟수
		int input = sc.nextInt();
		
		int[] result = new int[3];	// 승무패 횟수 카운트
		char[] result2 = new char[input];	//승 무 패 결과값 저장
		
		for(int i = 0; i < input; i++) {
			int input2;
			do {
			System.out.println("가위(1)/ 바위(2) / 보(3)를 선택하세요.");			
			input2 = sc.nextInt();
			}while(input2 < 1 || input2 > 3);	// 1~3 값 조건
			
			int com = (int) (Math.random() *3 + 1);
			System.out.println("당신   : "+(input2 ==1 ? "가위" : input2 == 2? "바위" :"보"));;
			System.out.println("컴퓨터 : "+(com ==1 ? "가위" : com == 2? "바위" :"보"));;
			
			if(input2 == com) { 
				System.out.println("비겼습니다.");
				result2[i] = '무';
				result[2]++;
			}else if((input2 - com == 1) || (input2 - com == -2)) {
				System.out.println("이겼습니다.");		
				result2[i] = '승';
				result[0]++;
			}else {
				System.out.println("졌습니다.");
				result2[i] = '패';
				result[1]++;
			}		
		}
		double re = (double)result[0]/(result[0]+result[1])*100;
		System.out.println("결과 : "+Arrays.toString(result2));
		System.out.println("승 : " + result[0] +"\n패 : " + result[1] + "\n무 : " + result[2]);
		System.out.printf("승률 : %.2f%%",re);		
		sc.close();
	}
}

 

반응형

'알고리즘 > 코딩도장' 카테고리의 다른 글

구글 입사 문제 중에서  (0) 2021.05.28
문자열 압축하기  (0) 2021.05.28
CamelCase를 Pothole_case로 바꾸기!  (0) 2021.05.28
모스부호 해독  (0) 2021.05.28
타노스의 핑거 스냅  (0) 2021.05.28