私は初級プログラミングクラスのためにコンソール環境のハングマンゲームを書いています。プレーヤーは、単語の長さと好きな推測の数を選択します。 '簡単モード'は簡単です...リストのインデックスとして使用する乱数を生成し、選択した単語が適切な長さであることを確認します。しかし、「ハードモード」では、ゲームが進むにつれてリストが洗練され、推測された文字が与えられている可能性の中で最大のリストを選択する必要があります。文字の頻度と位置に基づいてリストの内容(単語)を絞り込む最も簡単な方法は何ですか? (C#)
私たちはC#のListクラスを使用する代わりに、アレイベースの構造体を作成していない、注意する必要があります。
struct ListType
{
public type[] items;
public int count;
}
//defined as:
ListType myList = new ListType();
myList.items = new type[max value];
myList.count = 0;
をとにかく、ここで「ハードモード」は行くべき道の例です:
Word List:
hole
airplane
lame
photos
cart
mole
(player chooses word length of 4)
Word List (refined):
hole
lame
cart
mole
(player guesses "l", then "e")
Word List (refined):
hole
mole
"ラメ"は、より多くの単語が "... le ..."パターンを持つため省略されます。私にとって理にかなっているテクニックは、各単語のパターンを配列(つまり、 "mole"と "hole" = 0011、 "lame" = 1001)に格納することです。重複を数えて大きなリストを決定する。
これは私がそれを行うべきである方法ですか?私はプログラミングに慣れていないし、1年分の経験があるので、私はそのように答えていると思います。
ありがとうございます!
あなたは何を試してみることができますか? –
あなたはどのバージョンのC#を使用していますか? LINQはあなたを大きく助けるでしょうから。 –
お返事ありがとうございました!私はバックアップを保存し、chooseWordメソッドを完全に傷つけました。これらの回答のアドバイスを使って再作成しようとしています。 – nvillec