4. 랜덤 값을 생성해 컴퓨터와 주사위 굴리기를 해 이기면 "You Win!", 비기면 "Draw.", 지면 "You Lose!"를 출력하세요.
import java.util.Random;
import java.util.Scanner;
public class homework27thMarch2 {
public static void main(String[] args) {
System.out.println("컴퓨터와 주사위 게임을 하겠습니까?");
Scanner s = new Scanner(System.in);
String start = s.nextLine();
System.out.println("화면에 주사위를 굴릴까요?");
start = s.nextLine();
Random r = new Random();
int yourDice = r.nextInt(6);
System.out.println("당신의 주사위는 " + (yourDice + 1) + "입니다.\n\n컴퓨터가 주사위를 굴립니다. 실행할까요?");
start = s.nextLine();
int comDice = r.nextInt(6);
System.out.println("컴퓨터의 주사위는 " + (comDice + 1) + "입니다.\n");
if (yourDice > comDice) {
System.out.println("You Win!");
} else if (yourDice == comDice) {
System.out.println("Draw.");
} else {
System.out.println("You Lose!");
}
}
}
결과 :
컴퓨터와 주사위 게임을 하겠습니까?
화면에 주사위를 굴릴까요?
당신의 주사위는 2입니다.
컴퓨터가 주사위를 굴립니다. 실행할까요?
컴퓨터의 주사위는 5입니다.
You Lose!
주사위를 갯수를 늘려보고 싶어서 만들어봤다. 주사위 1~3개 선택해서 굴리기.
import java.util.Random;
import java.util.Scanner;
public class homework27thMarch2 {
public static void main(String[] args) {
System.out.println("컴퓨터와 주사위 게임을 하겠습니까?");
Scanner s = new Scanner(System.in);
String start = s.nextLine();
System.out.println("주사위를 몇 개 굴리겠습니까? (1 ~ 3개)");
int diceNum = s.nextInt();
start = s.nextLine();
System.out.println("화면에 주사위를 굴릴까요?");
start = s.nextLine();
Random r = new Random();
int yourDice1 = 0;
int yourDice2 = 0;
int yourDice3 = 0;
int yourDiceNum = diceNum;
while (yourDiceNum > 0) {
if (yourDiceNum >= 3) {
yourDice3 = r.nextInt(6);
} else if (yourDiceNum >= 2) {
yourDice2 = r.nextInt(6);
} else {
yourDice1 = r.nextInt(6);
}
yourDiceNum = yourDiceNum -1;
}
if (diceNum == 3) {
System.out.println("당신의 주사위는 " + (yourDice1 + 1) + " " + (yourDice2 + 1) + " " + (yourDice3 + 1) + "입니다.\n\n컴퓨터가 주사위를 굴립니다. 실행할까요?");
} else if (diceNum == 2) {
System.out.println("당신의 주사위는 " + (yourDice1 + 1) + " " + (yourDice2 + 1) + "입니다.\n\n컴퓨터가 주사위를 굴립니다. 실행할까요?");
} else {
System.out.println("당신의 주사위는 " + (yourDice1 + 1) + "입니다.\n\n컴퓨터가 주사위를 굴립니다. 실행할까요?");
}
start = s.nextLine();
int comDice1 = 0;
int comDice2 = 0;
int comDice3 = 0;
int comDiceNum = diceNum;
while (comDiceNum > 0) {
if (comDiceNum >= 3) {
comDice3 = r.nextInt(6);
} else if (comDiceNum >= 2) {
comDice2 = r.nextInt(6);
} else {
comDice1 = r.nextInt(6);
}
comDiceNum = comDiceNum -1;
}
if (diceNum == 3) {
System.out.println("컴퓨터의 주사위는 " + (comDice1 + 1) + " " + (comDice2 + 1) + " " + (comDice3 + 1) + "입니다.\n");
} else if (diceNum == 2) {
System.out.println("컴퓨터의 주사위는 " + (comDice1 + 1) + " " + (comDice2 + 1) + "입니다.\n");
} else {
System.out.println("컴퓨터의 주사위는 " + (comDice1 + 1) + "입니다.\n");
}
int yourDiceSum = yourDice1 + yourDice2 + yourDice3;
int comDiceSum = comDice1 + comDice2 + comDice3;
if (yourDiceSum > comDiceSum) {
System.out.println("You Win!");
} else if (yourDiceSum == comDiceSum) {
System.out.println("Draw");
} else {
System.out.println("You Lose!");
}
}
}
결과 :
컴퓨터와 주사위 게임을 하겠습니까?
주사위를 몇 개 굴리겠습니까? (1 ~ 3개)
3
화면에 주사위를 굴릴까요?
당신의 주사위는 4 3 5입니다.
컴퓨터가 주사위를 굴립니다. 실행할까요?
컴퓨터의 주사위는 4 1 3입니다.
You Win!
컴퓨터와 주사위 게임을 하겠습니까?
주사위를 몇 개 굴리겠습니까? (1 ~ 3개)
2
화면에 주사위를 굴릴까요?
당신의 주사위는 5 3입니다.
컴퓨터가 주사위를 굴립니다. 실행할까요?
컴퓨터의 주사위는 6 4입니다.
You Lose!
컴퓨터와 주사위 게임을 하겠습니까?
주사위를 몇 개 굴리겠습니까? (1 ~ 3개)
1
화면에 주사위를 굴릴까요?
당신의 주사위는 5입니다.
컴퓨터가 주사위를 굴립니다. 실행할까요?
컴퓨터의 주사위는 1입니다.
You Win!
'개발자 > Java' 카테고리의 다른 글
Java (자바) 메소드 (0) | 2020.04.05 |
---|---|
Java (자바) 배열과 레퍼런스 (0) | 2020.04.05 |
Java (자바) 가위, 바위, 보 (0) | 2020.03.29 |
Java (자바) 학점 산출, 주사위 굴려 의성어 출력 (0) | 2020.03.29 |
Java (자바) % 연산자의 활용 나눗셈 몫, 나머지 구하기, 자릿수 구하기 (0) | 2020.03.29 |