본문 바로가기

Language/Java 기본

반복문과 연산자를 활용한 야구게임의 구현

import java.util.Random;
import java.util.Scanner;


public class theBaseball {

	public static void main(String[] args) {

		Random ran = new Random();
		Scanner sc = new Scanner(System.in);
		int ball = 0;
		int strike = 0;
		boolean sw_itch = false;
		int N_1 = 0;
		int N_2 = 0;
		int N_3 = 0;
		int i = 0;
		
		
		while (sw_itch == false) {
			N_1 = ran.nextInt(10);
			N_2 = ran.nextInt(10);
			N_3 = ran.nextInt(10);
			if ((N_1 != N_2) && (N_1 != N_3) && (N_2 != N_3)) {
				sw_itch = true;
				System.out.println(N_1 + "" + N_2 + "" + N_3);

			}
		} // 랜덤 변수 (우리가 맞춰야 하는) 3개의 수를 선언하고 중복을 방지하기 위한 while문
		while(sw_itch == true) {
		System.out.printf("\n ■■■■■ %d 번째 라운드 ■■■■■", i);
		System.out.printf("\n숫자 세개를 입력하세요, 10이상은 안댄다.\n");
		int first = sc.nextInt(); // 이거 통합 못하냐 123 치면 다 들어가게 배열 써야 되지 않냐
		int second = sc.nextInt();
		int third = sc.nextInt();

		if ((N_1 == first || N_1 == second || N_1 == third)) {
			ball++;
		}
		if ((N_2 == first || N_2 == second || N_3 == third)) {
			ball++;
		}
		if ((N_3 == first || N_3 == second || N_3 == third)) {
			ball++;
		}
		// System.out.printf("%d",ball);

		if ((N_1 == first)) {
			ball--;
			strike++;
		}
		if ((N_2 == second)) {
			ball--;
			strike++;
		}
		if ((N_3 == third)) {
			ball--;
			strike++;
		}

 
		if ((strike == 3 )) {
			sw_itch = false;
			System.out.printf("%d 스트라이크!",strike);
			break;
			
		}
		else if ((ball >= 1 || strike >= 1)) {

			System.out.printf("%d S %d B", strike, ball);
			ball = 0;
			strike = 0;
			i++;
		}
		else
			System.out.println("아웃입니다..");
			ball = 0;
			strike = 0;
			i++;
	}
			
		System.out.println("\n■■■■■■■ 홈런!! 게임 클리어 축하드려요!!! ■■■■■■■■");
		try {
			Thread.sleep(1000);
		}catch(InterruptedException e ) {
			e.printStackTrace();
		}
		System.out.println(" 게임을 종료합니다.. ");

		
// 게임 진행에서부터 클리어까지의 함수
	// System.out.printf("%d %d %d",first,second,third);

//		System.out.println("프로그램 종료");
	
}}

'Language > Java 기본' 카테고리의 다른 글

for문의 응용  (0) 2021.01.04
다중 for 문의 사용  (0) 2020.12.31
랜덤 함수의 사용  (0) 2020.12.30
반복문(While)문 의 사용  (0) 2020.12.29
조건문 사용 (Switch)  (0) 2020.12.29