C_C++

(C++) 숫자 맞추기 게임: 클래스 이용

고니자니 2023. 12. 7. 07:52
반응형

클래스를 이용해서 간단한 숫자 맞추기 게임을 만들었습니다.

컴퓨터터 1부터 100까지의 숫자를 무작위로 생성하고, 이 숫자를 맞추는 프로그램입니다.

 

이 프로그램은 NumberGuessingGame이라는 클래스를 사용하여 게임을 구현합니다.

무작위로 생성한 숫자를 맞추는 과정은 playGame 메서드에서 처리되고, 사용자로부터 숫자를 입력받는 부분은 getUserGuess 메서드에서 처리됩니다. 사용자가 추측한 숫자를 평가하고 힌트를 주는 부분은 checkGuess 메서드에서 수행됩니다.

#include <iostream>
#include <cstdlib>
#include <ctime>

class NumberGuessingGame {
private:
    int targetNumber;
    int userGuess;

public:
    NumberGuessingGame() {
        // 무작위 숫자 생성을 위해 시드 설정
        std::srand(static_cast<unsigned int>(std::time(nullptr)));
        // 1부터 100까지의 무작위 숫자 생성
        targetNumber = std::rand() % 100 + 1;
        userGuess = 0;
    }

    void playGame() {
        std::cout << "1부터 100까지의 숫자를 맞춰보세요!" << std::endl;

        do {
            getUserGuess();
            checkGuess();
        } while (userGuess != targetNumber);

        std::cout << "축하합니다! 정답을 맞추셨습니다." << std::endl;
    }

private:
    void getUserGuess() {
        std::cout << "추측한 숫자를 입력하세요: ";
        std::cin >> userGuess;
    }

    void checkGuess() {
        if (userGuess < targetNumber) {
            std::cout << "더 큰 수를 입력하세요." << std::endl;
        } else if (userGuess > targetNumber) {
            std::cout << "더 작은 수를 입력하세요." << std::endl;
        } else {
            std::cout << "정답입니다!" << std::endl;
        }
    }
};

int main() {
    NumberGuessingGame game;
    game.playGame();

    return 0;
}

(Output)

1부터 100까지의 숫자를 입력하세요!

추측한 숫자를 입력하세요: 50
더 큰 수를 입력하세요.
추측한 숫자를 입력하세요: 70
더 큰 수를 입력하세요.
추측한 숫자를 입력하세요: 80
더 큰 수를 입력하세요.
추측한 숫자를 입력하세요: 90
더 작은 수를 입력하세요.
추측한 숫자를 입력하세요: 85
더 작은 수를 입력하세요.
추측한 숫자를 입력하세요: 82
더 큰 수를 입력하세요.
추측한 숫자를 입력하세요: 83
더 큰 수를 입력하세요.
추측한 숫자를 입력하세요: 84
짝짝짝!! 정답입니다!
축하합니다! 정답을 맞추셨습니다.

(C++) 숫자 맞추기 게임: 클래스 이용

 

 

728x90
반응형