연습문제
C언어 베이스볼 게임
오군_
2023. 5. 12. 17:39
반응형
/* 종료 조건 : 10판 / 소지금 0원(배팅할 수 없는 경우)
3. 숫자야구 게임 (배열써야함)
컴퓨터는 0~9까지 랜덤한 세자리를 뽑는다. / int computer[3]
플레이어는 이 숫자를 맞춘다.
컴퓨터 0 1 2 / 플레이어 1 2 3 => 2ball
컴퓨터 3 5 7 / 플레이어 5 1 7 => 1strike 1ball
종료 : 3strike
이중포문?
*/
void BaseballGame()
{
int ball = 0;
int strike = 0;
// 컴퓨터 공 세개 설정
srand((unsigned int)time(NULL));
int computerSelect[3] = { rand() % 10, rand() % 10, rand() % 10 };
while (computerSelect[0] == computerSelect[1] ||
computerSelect[1] == computerSelect[2] ||
computerSelect[2] == computerSelect[0])
{
for (int i = 0; i < 2; i++)
{
computerSelect[i + 1] = rand() % 10;
}
}
int player[3] = { 0};
// 게임 종료 조건
while (strike <3)
{
strike = 0;
ball = 0;
// 플레이어 숫자 입력
printf("플레이어 숫자 세개 입력 :");
for (int i = 0; i < 3; i++)
{
scanf("%d", &player[i]);
}
if (player[0] == player[1] || player[1] == player[2] || player[2] == player[0])
{
printf("플레이어 숫자 재입력 (숫자 중복불가능):\n");
continue;
}
// 게임 종료 조건 확인
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (player[i] == computerSelect[j] && i == j)
{
strike++;
}
else if (player[i] == computerSelect[j])
{
ball++;
}
}
}
printf("스트라이크 : %d 볼 : %d\n", strike, ball);
}
printf("게임 클리어\n");
}
반응형
반응형