どこでも見つかりませんでした...C - 既に使用されているユーザーを無効にする
私の大学でプロジェクトを作っています。私はいくつかの質問/可能性をユーザーが作ることができます...それを使用した後、私はそれを無効にし、ユーザーが別の "while"ループに進むことができるように表示されません。
例:
while (something == true)
{
printf("Your possibilities are:\n 1 - Use a hammer\n 2 - Use a pipe\n 3 - Use a chair\n");
choice = getchar();
switch (choice)
{
case '1':
someCode();
break;
case '2':
someCode();
break;
case '3':
someCode();
break;
}}
これはもちろん一例です。問題は、ユーザーがハンマーを使用した後に、いくつかのコードが実行され、次に - 「パイプ」と「椅子」の2つの可能性だけが欲しいということです。次のチャンスは "双方向"スイッチに過ぎません。私のコードでは、6つの可能性があり、すべての選択肢に対してブールを作り、if-elseに6つのブールを組み合わせて、それぞれの可能性について書き換えを行うことは考えられない。
解決方法はありますか?適切には、すべての可能性(それが使用されている場合)に対してbool変数が必要ですが、何らかの方法でそのスイッチを定義する必要があります。
ありがとうございます!
に従います。 3つのハードコードされたオプションを持つ代わりに、何らかの種類のデータ構造にすべてを格納する必要がある場合は、どのようにプログラムを記述しますか? (例えば、オプションがファイルに保存されていて、その数が事前に分からなかった場合) – Hurkyl
は、一連の質問と「既に尋ねられた」boolの配列を持っています – pm100
?例えば、ユーザーが次にパイプ(2番)を使用すると、それは消え、椅子は2番になります。それは私が苦労するものです。 – Stepan