テキストファイルからランダムな単語が選択されたゲームを作成しています。この単語はスクランブルされ、ユーザーのために表示されます。ユーザーは元の単語を推測しようとする必要があります。それらが完了すると、[回答を確認]を押し、それらが正しいかどうかが表示されます。 C#で何かをやっているのはこれが初めてです(私はJavaに慣れています)。そのため、基本的な説明があれば十分に理解できます。スクランブルされた単語が表示されているときは、スクランブルされた単語全体が表示されず、それぞれの単語に対して約3文字と時々同じ3文字しか表示されません。私は自分のコードを見て、何が間違っているのかを見つけるのに苦労しました。私はいくつかの簡単なテストを行いました。ファイルが読み込まれており、origWords []配列には完全な単語が格納されています。これは私が問題がjumbleWords()メソッドの中にあると信じさせてくれます。私は何かすべての助けに感謝します。私の完全な配列が表示されていません
編集:私は問題の領域と思われるものにコードをカットします。
private string jumbleWords(String origWord)
{
// converts word to char array
char [] charArray = origWord.ToCharArray();
// creates bool array with length of charArray
bool [] letterCheck = new bool [charArray.Length];
for (int i = 0; i < letterCheck.Length; i++)
{
letterCheck[i] = false;
}
Random letterAssign = new Random();
string jumble = null;
for (int index = 0; index < charArray.Length; index++) //jumbling of word
{
// picks random letter (number position of array)
int letterChosen = letterAssign.Next(charArray.Length);
if (letterCheck[letterChosen] == false) //check if letter has been used
{
jumble += charArray[letterChosen]; //adds letter to jumble string
// changes bool array position to true so it can't be used again
letterCheck[letterChosen] = true;
}
}
return jumble;
}
[Fisher Yates Shuffle](https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle)を参照し、それを使用して単語を突き止める。これはC#言語の問題ではなく、アルゴリズムの問題の選択肢が貧弱です。 –
*しかし私は先に進み、プログラム全体を表示しました*、それは実際には逆効果です。 [最小限で完全で検証可能なサンプルの作成方法](http://stackoverflow.com/help/mcve)を参照してください。 'jumbleWords'があなたの問題だと思ったら、その機能だけをテストし、それが問題であることを確認して、そのコードを投稿するMCVEを書いてください。大量のコードをダンプすることで、人々があなたを助けるのが難しくなります。 –
私は問題の領域に切り分けました。ありがとうございました。 –