#include <iostream>
#include <stdexcept> // runtime_errorなどの標準例外クラスを使用（現代的なC++プログラムは、この使用をお勧めする）
using namespace std;

int main()
{
    int gold = 0;
    cout << "所持金の初期値を入力してください" << endl;
    cout << "値は1以上100以下の整数とします" << endl;

    try {
        cin >> gold;
        if (cin.fail()) {
            throw runtime_error("無効な値を入力しています"); // runtime_errorは標準例外クラスで、文字列の例外を送出できる
        }
        if (gold < 1 || gold > 100) {
            throw runtime_error("1〜100を入力しましょう");
        }
    }
    catch (const exception& e) {  // exceptionで受け取ることで、標準例外をまとめて処理できる
        cerr << e.what() << endl; // e.what()でエラーメッセージを安全に処理できる
        return 1;
    }

    cout << "所持金は" << gold << endl;
}
