imは再帰関数を使用している間、hangmanについてコンソールアプリケーションを作成しようとしています。私はそれがループなしで起こる方法を理解していない。私は再帰せずにそれをやったが正常に動作しますが、私は再帰的なメソッドに変更する必要があります、次のコードは私の非再帰的なコードです。Hangman recursive c#
static void Main(string[] args)
{
string HiddenWord = "csharp";
//--make a dash array
char[] dashes = new char[HiddenWord.Length];
for (int i = 0; i < dashes.Length; i++)
{
dashes[i] = '_';
}
// --type dashes equal to array length
for (int i = 0; i < dashes.Length; i++)
{
Console.Write(dashes[i] + " ");
}
Console.WriteLine();
int count = 0;
//--ask the user to guess
do
{
Console.WriteLine("Enter a letter");
char letter = char.Parse(Console.ReadLine());
for (int i = 0; i < HiddenWord.Length; i++)
{
//replace dash with letter
if (HiddenWord[i] == letter)
{
count++; //update the count to check when to exit
dashes[i] = letter; //if correct letter put dash instead of letter
//display again dash with letters instead
for (int j = 0; j < dashes.Length; j++)
{
Console.Write(dashes[j] + " ");
}
}
}
Console.WriteLine();
} while (count < dashes.Length);
Console.ReadLine();
}
なぜそれが再帰的であるべきで、あなたが再帰的にするためにどの部分たいです?ループは十分ではありませんか?何故なの? –
'しかし、私はそれを再帰的なメソッドに変更する必要があります誰が言う? –
おそらくエクササイズシートはこう言っています.... –