我想在用户向一个数组输入小于1或大于25的int值时显示消息。或者如果用户之前已经输入了相同的值。
//create one empty array named vektor for 4 values.
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());
}
}
如果我在编号2上输入29作为值,我想要这样的东西。
if (vektor == 0 || vektor =>26)
{
Console.WriteLine("You entered wrong value, try again")
}
然后您再次返回第2行,并尝试输入正确的值。
尝试一下
//create one empty array named vektor for 4 values.
int[] vektor = new int[4];
//take input from user
for (int i = 0; i < vektor.Length; i++)
{
int userInput = 0;
do
{
Console.Write("row number:{0}: Enter one integer:", i + 1);
userInput = Convert.ToInt32(Console.ReadLine());
}
while (userInput < 1 || userInput > 25 || vektor.Contains(userInput));
vektor[i] = userInput;
}
您可以在一个while loop
中完成。只要输入错误就不要increase
计数器
using System;
namespace learn_c_
{
class Program
{
static void Main(string[] args)
{
int[] vektor = new int[4];
int counter = 0;
while (counter < vektor.Length)
{
Console.Write("row number:{0}: Enter one integer: ", counter + 1);
int number = Convert.ToInt32(Console.ReadLine());
if (number > 0 && number < 26)
{
vektor[counter++] = number;
}
else
{
Console.WriteLine("You entered wrong value, try again");
continue;
}
}
}
}
}