일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 日本語
- 一日一つメソッド
- メソッド
- 건담베이스
- ruby
- 건담
- 비즈니스일본어
- javascript
- vscode
- Python
- CSS
- 자바
- rails
- 반다이몰
- html
- 単語
- C로 시작하는 컴퓨터 프로그래밍4판
- Flutter
- jsp
- 연습문제
- java
- 디지몬
- 일본어
- 인프런
- DART
- Spring
- Web
- rails7
- nico
- springboot
Archives
- Today
- Total
AR삽질러
Java 주사위 게임 만들기 본문
728x90
조건문과 난수를 활용한 주사위 게임 만들기
주사위 게임 만들기
설명 : 사용자가 주사위를 굴려서 나온 숫자와 컴퓨터가 굴린 주사위의 숫자를 비교하여 승패를 결정하는 게임입니다.
1. 시작시 사용자의 닉네임을 설정합니다.
2. 한게임이 끝나면 다시 게임을 시작할지 물어보고 y진행 n그만두기 입니다.
3. 하나의 게임이 시작되면 사용자의 현재 life와 score를 알려줍니다.
4. 사용자가 승리하면 10점을 획득하고 패배하면 라이프1을 잃습니다. 비겼을시는 점수와는 상관이 없습니다.
5. 승리조건 100점 달성, 패배 라이프 0 or 사용자가 종료하기..
Random 클래스를 사용하여 주사위를 굴린 숫자를 무작위로 선택하고 Scanner 클래스를 사용하여 사용자로부터 입력을 받습니다. while문을 통해서 게임을 계속 수행할지 여부를 체크합니다.
사용자의 게임 실행여부를 선택하고 주사위를 굴렸을 때 나온 숫자를 출력하고 승패를 결정합니다.
코드
public class Dice {
// 주사위게임
// 설명 : 사용자가 주사위를 굴려서 나온 숫자와
// 컴퓨터가 굴린 주사위의 숫자를 비교하여 승패를 결정하는 게임 (승리 조건 : 100점달성, 패배 : 라이프모두 소진시)
// 난수 생성과 조건문을 사용
public static void main(String[] args) {
Scanner scan = new Scanner(System.in); // Scanner객체 생성
Random random = new Random(); // random객체 생성
int life = 5;
int score = 0;
boolean play = true;
System.out.print("사용자의 닉네임을 만들어주세요^_^ : ");
String name = scan.nextLine();
System.out.println("======================================");
System.out.print("게임을 시작하시겠습니까? (시작하기 : y, 종료 : n) : ");
String input = scan.nextLine();
System.out.println();
while(play) {
int player = 0; // 사용자의 주사위 숫자
int computer = 0; // 컴퓨터의 주사위 숫자
System.out.println("======================================");
// 사용자 주사위
if(input.equals("y")) {
player = (int)(Math.random()*6)+1;
System.out.println(name + "님의 주사위 번호 : " + player);
}
// 컴퓨터의 주사위
computer = (int)(Math.random()*6)+1;
System.out.println("computer의 주사위 번호 : " + computer);
System.out.println();
System.out.println("현재 Score : " + score );
System.out.println("현재 life : " + life );
if (player > computer) {
System.out.println(name+ "님이 승리하셨습니다!");
score += 10;
} else if (player < computer) {
System.out.println(name + "님이 패배하셨습니다.");
life -= 1;
} else {
System.out.println("비겼습니다.");
}
System.out.println();
System.out.print("게임을 계속하시겠습니까? (예: y, 아니오: n): ");
String answer = scan.nextLine();
if (!answer.equalsIgnoreCase("y")) { // 게임을 더 이상 진행하지 않는 경우
play = false;
}else if(life == 0) {
System.out.println("life가 0이되었습니다....ㅠ.ㅠ");
play = false;
}else if(score == 100) {
System.out.println("게임에서 승리하였습니다 축하드립니다~!!");
play = false;
}
}
System.out.println("게임을 종료합니다.");
scan.close();
}
}
728x90
반응형
LIST
'JAVA' 카테고리의 다른 글
JAVA 로또번호 생성기 만들기, 로또 게임 만들기 (0) | 2023.02.22 |
---|---|
JAVA 구구단 1 ~ 9단 단이름 가로출력 (0) | 2023.02.22 |
이것이 자바다 - 4장 확인문제(조건문과 반복문) (0) | 2023.02.22 |
이것이 자바다 - 3장 확인문제(연산자) (0) | 2023.02.21 |
이것이 자바다 - 2장 확인문제(변수와 타입) (0) | 2023.02.21 |