重複の可能性:
C# で List<T> をランダム化する
ユーザーに5つの質問を重複せずにランダムに出題し、その質問が正しければ次の質問に進み、間違っていれば次の質問に進み、ユーザーが正しい答えを返すまで停止するプログラムを作成したいと考えています。しかし、重複があり、ユーザーが間違った答えを入力すると、一度だけ停止し、その後プログラムが終了するなど、いくつかの問題がまだあります! 同じ質問の重複を防ぐにはどうすればよいですか。また、間違った値を入力した場合、次の質問に進まなかったり、プログラムが終了したりしませんか?
static void Main()
{
next:
Random question = new Random();
int x = question.Next(5);
string[] array = new string[5];
array[0] = "-What is the capital of France";
array[1] = "-What is the capital of Spain";
array[2] = "-What is the captial of Russia";
array[3] = "-What is the capital of Ukraine";
array[4] = "-What is the capital of Egypt";
Console.WriteLine(array[x]);
string[] answer = new string[5];
answer[0] = "Paris";
answer[1] = "Madrid";
answer[2] = "Moscow";
answer[3] = "Kiev";
answer[4] = "Cairo";
string a = Console.ReadLine();
if (a == answer[x])
{
Console.WriteLine("It's True \n*Next Question is:");
goto next;
}
else
Console.WriteLine("It's False \n*Please Try Again.");
Console.ReadLine();
}