제가 코딩을 하려고 하는데 제가 생각하고 있는 함수? 연산?을 어떻게 써야할지 몰라 질문드립니다.
제가 짜려고 하는 코딩은 '게임'입니다.
2명이 게임을 하는데 1~6까지 숫자가 적힌 주사위를 던져 특정한 값이 나오면 돈을 얻습니다.
예를들어 주사위를 던져 1이 나오면 '1만원' 2가 나오면 '21만원' 3이 나오면 '31'만원 등등..
게임의 기본적인 룰은 이렇고 총 1000만원을 먼저 얻는 사람이 승리하는 게임입니다.
저는 배열,for문,if문,상속을 이용하여 제가 생각한 게임을 만들고 싶은데
어느 부분에 어떻게 써야 할지 감이 안 잡힙니다....
예를들어 scanner를 이용하여 1~6까지의 정수를 받아오고 그 값 들을 배열에 넣은 후 return값은 몇으로 한다.
이런 식으로 풀어서 적어주시면 코드는 제가 직접 짜보겠습니다...
sehongpark님의 답변
## 프로젝트 진행 단계
일반적으로 프로젝트는 아래의 순서로 진행됩니다.
1. 요구사항 분석
2. 설계
3. 구현
4. 테스트
5. 배포
## 요구사항 분석
다음과 같은 요구사항을 적어주셨네요.
```
제가 코딩을 하려고 하는데 제가 생각하고 있는 함수? 연산?을 어떻게 써야할지 몰라 질문드립니다.
제가 짜려고 하는 코딩은 ‘게임’입니다.
2명이 게임을 하는데 1~6까지 숫자가 적힌 주사위를 던져 특정한 값이 나오면 돈을 얻습니다.
예를들어 주사위를 던져 1이 나오면 ‘1만원’ 2가 나오면 ‘21만원’ 3이 나오면 ‘31’만원 등등..
게임의 기본적인 룰은 이렇고 총 1000만원을 먼저 얻는 사람이 승리하는 게임입니다.
저는 배열,for문,if문,상속을 이용하여 제가 생각한 게임을 만들고 싶은데
어느 부분에 어떻게 써야 할지 감이 안 잡힙니다….
예를들어 scanner를 이용하여 1~6까지의 정수를 받아오고 그 값 들을 배열에 넣은 후 return값은 몇으로 한다.
이런 식으로 풀어서 적어주시면 코드는 제가 직접 짜보겠습니다…
```
## 설계
요구사항을 토대로 클래스를 설계합니다. 간단히 아래의 정도로 구성해보았습니다.
+ Game: 게임
- Player[] players; // 2명의 참가자
- play(); // 게임을 진행
+ Player: 2명의 사용자
- name; // 사용자 이름
- money; // 사용자 획득 금액
- 기타 메소드들()...
+ Dice: 주사위
- roll(); // 주사위를 던져 임의의 값을 반환
클래스를 설계해보았다면 게임의 시나리오를 정리해보세요
```
1. 프로그램을 동작한다.
- 프로그램 시작을 알린다.
2. 사용자의 이름을 입력받는다
- 플레이어1: A
- 플레이어2: B
3. 일정 순서로 주사위를 던져 돈을 얻는다.
- A -> 주사위 값 1 -> 획득: 10만원
- B -> 주사위 값 5 -> 획득: 50만원
- A -> ...
4. 승자가 나올 때까지 과정 3을 반복한다
```
## PS
상속을 사용하려면 플레이어 기능이 무언가 확장 되어야 할 것 같네요. 금액이 오르면 일반 플레이어가 아닌 승급을 하는 등의 시나리오를 작성해보세요.
leeseunguk77님의 답변
감사합니다 좀 더 고민해볼께요!!