DEVELOPER NOMAD

JAVA 숫자 야구 게임 (자바 숫자 야구 게임) 본문

JAVA(자바)/JAVA(자바) 실습

JAVA 숫자 야구 게임 (자바 숫자 야구 게임)

DEVELOPER NOMAD 2019. 1. 7. 12:10

숫자 야구게임 실습 입니다 . 기존의 야구게임에서 조금 변형 하였구요 게임 룰은 아래와 같습니다.


궁금하신점이나 더 좋은방법 등이 있다면 공유 해보았으면 좋겠습니다^^ 


// 숫자 야구 게임


// 1. 0 ~ 9 의 난수 두자리 발생 , 두자리 수 입력


// 2. 숫자 순서 둘다 맞추면 홈런


// 3. 숫자,순서 하나라도 맞추면 안타


//4. 숫자는 맞지만 순서 다르면 ball 


// 5. 숫자 맞지 않으면 out


// 6. 3out 시 종료


import java.util.Random;

import java.util.Scanner;




class BaseballGame {


public BaseballGame() {

System.out.println("숫자 야구 게임 start");

}


public void startGame() {


StringBuffer sb = new StringBuffer();


String s = new String();


Scanner sc = new Scanner(System.in);


int homerun = 0;


int anta = 0;


int ball = 0;


int n = 0;


int cnt = 0;


Random rnd = new Random();


System.out.println(sb);


while (cnt != 3) { //6. 3아웃시 종료


// 1. 0 ~ 9 의 난수 두자리 발생

gogo:

for(int i=0 ; i<2 ; i++ ) {

n=rnd.nextInt(10);

for(int k=0 ; k<sb.length(); k++) {

if (n == Integer.parseInt(sb.substring(k, k+1))) {

i--;

continue gogo;

}

}

sb.append(Integer.toString(n));

}


System.out.print("두개의 숫자 입력 : ");


s = sc.next();


// 2. 숫자 순서 둘다 맞추면 홈런

if (s.charAt(0) == sb.charAt(0) && s.charAt(1) == sb.charAt(1)) {

System.out.println("홈런입니다.");

homerun++;

}


// 3. 숫자 + 순서 하나라도 맞추면 안타

else if (s.charAt(0) == sb.charAt(0) || s.charAt(1) == sb.charAt(1)) {

System.out.println("안타입니다.");

anta++;

}


// 4. 숫자는 맞지만 순서 다르면 ball


else if (s.charAt(1) == sb.charAt(0) || s.charAt(0) == sb.charAt(1)) {

System.out.println("볼입니다.");

ball++;

}


else {

// 5. 숫자 맞지 않으면 out

System.out.println("아웃입니다.");

cnt++;

}


System.out.println("난수 : " + sb);


sb.setLength(0);


if (cnt == 3) {

System.out.println("3아웃 !!!!!!!!!!!");

System.out.println("총결과  홈런 : " + homerun + " 안타 :" + anta + " 볼 : " + ball);

}

}


}

}


public class Random_Quiz02 {


public static void main(String[] args) {

// TODO Auto-generated method stub


BaseballGame ba = new BaseballGame();


ba.startGame();


}


}



Comments