본문 바로가기

Programming language/C++

[C++] 컴퓨터와 숫자 맞추기 게임

C++에서 인공지능으로 숫자 맞추기 게임을 만드는 것은 재미있는 프로젝트입니다. 이 게임에서 컴퓨터는 임의의 숫자를 생각하고 플레이어(당신)는 그것을 추측하려고 합니다. 컴퓨터는 당신이 정확한 숫자를 추측하는 데 도움이 되는 힌트를 제공합니다. 다음은 간단한 구현입니다.

 

프로그램 흐름
1. 이 프로그램은 게임을 실행할 때마다 난수가 다른지 확인하기 위해 현재 시간을 기준으로 난수 시드를 초기화합니다.
2. 지정된 하한과 상한(이 경우 1 ~ 100) 사이의 난수를 생성합니다.
3. 게임이 시작되면 추측을 입력합니다.
4. 이 프로그램은 여러분의 추측과 목표 숫자를 비교하여 "너무 낮음," "너무 높음," "축하합니다" 등의 피드백을 제공합니다
5. 정확한 숫자를 추측할 때까지 추측을 계속합니다.

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;

int main() {
    cout << "Number Guessing Game with AI" << endl;

    // Initialize random seed
    srand(time(nullptr));

    int lowerBound = 1;
    int upperBound = 100;
    int target = rand() % (upperBound - lowerBound + 1) + lowerBound;
    int guess;
    int numberOfTries = 0;

    cout << "I'm thinking of a number between " << lowerBound << " and " << upperBound << "." << endl;

    do {
        cout << "Enter your guess: ";
        cin >> guess;
        numberOfTries++;

        if (guess < target) {
            cout << "Too low! Try a higher number." << endl;
        } else if (guess > target) {
            cout << "Too high! Try a lower number." << endl;
        } else {
            cout << "Congratulations! You guessed the correct number (" << target << ") in " << numberOfTries << " tries." << endl;
        }

    } while (guess != target);

    return 0;
}

결과

Number Guessing Game with AI
I'm thinking of a number between 1 and 100.
Enter your guess: 50
Too low! Try a higher number.
Enter your guess: 75
Too high! Try a lower number.
Enter your guess: 60
Too low! Try a higher number.
Enter your guess: 70
Too low! Try a higher number.
Enter your guess: 73
Congratulations! You guessed the correct number (73) in 5 tries.