私はちょうど c# を学んでおり、先に進む前にすべてを理解したいと思っています。
私が抱えている問題は、2つの Console.ReadLine(); が必要なことです。コンソールを一時停止します。1 だけを使用すると、プログラムは入力後に終了します。では、代わりに2つのreadlineメソッドが必要なのはなぜですか? 何か案は?
私のコードでは、readline メソッドの 1 つをコメントアウトしたことに注意してください。これは、プログラムを動作させたい方法ですが、そうではありません。ただし、コメントを削除するとプログラムは機能しますが、その理由がわかりません。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CoinFlip
{
class Program
{
static void Main(string[] args)
{
Random rng = new Random();
Console.WriteLine(@"
This program will allow you to guess heads or tails on a coin flip.
Please enter h for heads, or t for tails and press Enter: ");
char userGuess = (char)Console.Read();
int coin = rng.Next(0,2);
Console.WriteLine("Coin is {0}\n\n", coin);
if (coin == 0 && (userGuess == 'h' || userGuess == 'H'))
{
Console.WriteLine("It's heads! You win!");
}
else if (coin == 1 && (userGuess == 't' || userGuess == 'T'))
{
Console.WriteLine("It's tails! You win!");
}
else if (userGuess != 't' && userGuess != 'T' && userGuess != 'h' && userGuess != 'H')
{
Console.WriteLine("You didn't enter a valid letter");
}
else
{
if (coin == 0) { Console.WriteLine("You lose mofo. The coin was heads!"); }
if (coin == 1) { Console.WriteLine("You lose mofo. The coin was tails!"); }
}
Console.ReadLine();
//Console.ReadLine();
}
}
}