Я заполняю массив значений с помощью пользовательского ввода. Код, который у меня есть, делает большую часть этого, но я хочу показать явное сообщение, если пользовательский ввод отклонен (проверка диапазона / уникальности), прежде чем запрашивать его снова.
В частности
- Я хочу для отображения сообщения об ошибке, когда пользователь вводит значение int меньше 1 или больше 25 в один массив.
- Я хочу отобразить сообщение об ошибке, если пользователь уже ввел то же значение, что и раньше.
Код, который я только что неоднократно запрашивал для одной и той же строки до получения приемлемого значения:
int[] vektor = new int[4];
//take input from user
for (int i = 0; i < vektor.Length; i++)
{
// as long as value not beetween 1 or 25
while (!(vektor[i] >= 1 && vektor[i] <= 25))
{
// Entry row number
int x = i + 1;
//ready input and store in array called vektor
Console.Write("row number:{0}: Enter one integer:", x);
vektor[i] = Convert.ToInt32(Console.ReadLine());
}
}
Я понимаю, что мне нужно добавить что-то вроде следующего if
, но я ' Я не уверен, где его разместить.
if (userInput <= 0 || userInput => 26)
{
Console.WriteLine("You entered wrong value, try again")
}
, а также некоторая форма vektor.Contains(?)
для проверки наличия входных данных в массиве.
В конце мне нужно добиться что-то вроде
row 1: -3
You entered wrong value, try again
row 1: 10
row 2: 10
You entered dupicate value, try again
row 2: 5
....