//capture input value for peak size and return
public static int GetPeakSize()
{
//declare variables, intitialize and parse after input
int peak;
Console.WriteLine("\nPlease enter the peak size (must be a number 1-10): ");
peak = int.Parse(Console.ReadLine());
//if user enter anything that is not inside the 1-10 range, default
//to 3
if (peak < 1 || peak > 10)
{
peak = 3;
}
return peak;
}
В вышеописанном методе я просто пытаюсь собрать входные данные, проанализировать его, и если вход не попадает в диапазон 1-10, верните значение по умолчанию 3. Но вместо просто проверки числового ввода , Я хочу вернуть значение по умолчанию 3, если НИЧЕГО, но вводятся числовые значения 1-10. Поэтому, если они вводят «четыре» вместо 4, я бы хотел, чтобы значение по умолчанию равнялось 3. Мне хотелось бы что-то сделать по строкам if (value! = Int || value < 1 || value> 10). ..... default = 3. Я знаю, что это невозможно, но все равно вокруг?Может ли моя условная инструкция основываться на типах данных?
Почему бы не просто отключить нечисловой ввод? Если они вводят «четыре» дисплея, появится сообщение с сообщением «Пожалуйста, введите только цифры». Кажется, сбивает с толку, что пользователь вводит «четыре», и просто попробуйте молча предположить 3. –
@eddie_cat Да, я знаю, что это требования к назначению. – 2014-09-15 20:36:14
gotcha, просто подумал, что стоит отметить. –