//1.배열을 활용
class RspPlayer{
public static final String[] arrRSP = {"가위", "바위", "보"}; // 0:가위
private String name;
private String rsp;
//컴퓨터
public RspPlayer(String name) {
this.name = name;
int num = (int) (Math.random() * 3);
rsp = arrRSP[num];
}
//사용자
public RspPlayer(String name,String rsp) {
this.name = name;
this.rsp = rsp;
}
public void getResult(RspPlayer you) {
System.out.println(this.name +":" + this.rsp + " " + you.name +":" + you.rsp );
if(this.rsp.equals(you.rsp)) {
System.out.println("비겼습니다.");
return;
}
if(this.rsp.equals("가위")) {
if(you.rsp.equals("보")) {
System.out.println(this.name + "이겼습니다.");
}else if(you.rsp.equals("바위")) {
System.out.println(this.name + " 졌습니다.");
}
}else if(this.rsp.equals("바위")) {
switch (you.rsp) {
case "보":
System.out.println(this.name + "졌숩니다.");
break;
case "가위":
System.out.println(this.name + "이겼습니다.");
break;
default:
System.out.println("잘못된 입력입니다.");
break;
}
}else if(this.rsp.equals("보")) {
if(you.rsp.equals("바위")) {
System.out.println(this.name + "이겼습니다.");
}else if(you.rsp.equals("가위")) {
System.out.println(this.name + " 졌습니다.");
}else {
System.out.println("잘못된 입력입니다.");
}
}else {
System.out.println("잘못된 입력입니다.");
}
}
}
public class RSPGameMain {
public static void main(String[] args) {
System.out.println("컴퓨터와 가위 바위 보 게임을 합니다.");
while(true) {
RspPlayer computer = new RspPlayer("컴퓨터");
RspPlayer you;
Scanner sc = new Scanner(System.in);
System.out.print("가위 바위 보!>>");
String rsp = sc.next();
you = new RspPlayer("당신", rsp);
//결과
computer.getResult(you);
System.out.print("그만하시겠습니까? 그만 or 아니요");
rsp = sc.next();
if(rsp.equals("그만"))
break;
}
System.out.println("게임 종료입니다.");
}
}
'프로그램 문제' 카테고리의 다른 글
Employee employee = new Employee("홍길동", 19, "서울 뉴욕시", "개발 1팀");employee.printInfo(); 를 구현하시오. (0) | 2022.04.26 |
---|---|
CountryMap 에서 아래의 함수를 추가하여 테스트 (0) | 2021.11.13 |
love.txt 카피 문제.(좋은 아침 입니다. 를 love.txt 로 저장 -> 해당 내용을 읽어 들여 love2.txt 로 복사) (0) | 2021.11.13 |
자바 채팅 소스 (0) | 2021.11.11 |
그만"이 입력될 때까지 나라 이름과 인구를 입력 받아 저장하고, 다시 나라 이름을 입력받아 인구를 출력하는 프로그램을 작성하라. 다음 해시맵을 이용하라. (0) | 2021.11.11 |