개발 완료
(Java)자바로 가위바위보 게임 만들기(1)
페페로니피자
2020. 4. 2. 23:24
반응형
1. 목적
- Java를 이용해 콘솔에 가위바위보 게임을 찍기
- 컴퓨터는 가위바위보 중 랜덤으로 냅니다
2. 코드
package Java_Study;
public class Main {
public static void main(String[] args) {
String[] ran = {"Rock", "Scissor", "Paper"};
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < 1; i++) {
System.out.println("Rock Scissor Paper!");
String me = scanner.nextLine();
int tmp = (int)(Math.random()*3);
System.out.println(ran[tmp]);
while (me.equals("Rock")) {
if (tmp == 0) {
System.out.println("Draw!");
break;
}
if (tmp == 1) {
System.out.println("You win!");
break;
}
if (tmp == 2) {
System.out.println("You lose!");
break;
}
}
while (me.equals("Scissor")) {
if (tmp == 0) {
System.out.println("You lose!");
break;
}
if (tmp == 1) {
System.out.println("Draw!");
break;
}
if (tmp == 2) {
System.out.println("You win!");
break;
}
}
while (me.equals("Paper")) {
if (tmp == 0) {
System.out.println("You win!");
break;
}
if (tmp == 1) {
System.out.println("You lose!");
break;
}
if (tmp == 2) {
System.out.println("Draw!");
break;
}
}
}
}
}
|
2. 1. 코드 설명
String[] ran = {"Rock", "Scissor", "Paper"};
Scanner scanner = new Scanner(System.in);
ran이라는 배열에 가위바위보를 넣는다.
Scanner를 가져와서 콘솔에서 나의 가위바위보를 받는다
for (int i = 0; i < 1; i++) {
System.out.println("Rock Scissor Paper!");
String me = scanner.nextLine();
int tmp = (int)(Math.random()*3);
System.out.println(ran[tmp]);
for문, Math.random을 돌려서,
ran 배열 중 아무거나 랜덤으로 가지고 온다
내가 낸 값은 me에 저장된다
while (me.equals("Rock")) {
if (tmp == 0) {
System.out.println("Draw!");
break;
}
if (tmp == 1) {
System.out.println("You win!");
break;
}
if (tmp == 2) {
System.out.println("You lose!");
break;
}
}
while (me.equals("Scissor")) {
if (tmp == 0) {
System.out.println("You lose!");
break;
}
if (tmp == 1) {
System.out.println("Draw!");
break;
}
if (tmp == 2) {
System.out.println("You win!");
break;
}
}
while (me.equals("Paper")) {
if (tmp == 0) {
System.out.println("You win!");
break;
}
if (tmp == 1) {
System.out.println("You lose!");
break;
}
if (tmp == 2) {
System.out.println("Draw!");
break;
}
내가 낸 값에 따라서 승패를 판단한다.
if문에는 random으로 가지고 온 배열의 자릿수를 나타내는 것이다.
즉 0번째면 Rock.
3. 문제점
- 배열과 for문으로 인한 속도 저하
- while문 때문에 코드의 중복 및 지저분함
4. 자바로 가위바위보 게임 만들기(2
반응형