Повторный ввод в цикле в C#
Один и тот же вопрос можно повторять
в цикле while. Пока разбор не удался,
просим ввести число снова:
while (true) {
Console.Write("enter number: ");
string? line = Console.ReadLine();
if (int.TryParse(line ?? "", out int num)) {
Console.WriteLine(num);
break;
}
Console.WriteLine("bad");
}
После успешного TryParse выходим
через break. При ошибке цикл
задает вопрос еще раз.
Тот же прием работает для дробного.
double.TryParse тоже смотрит на
региональные настройки среды, поэтому ввод
должен совпадать с принятым там форматом:
while (true) {
Console.Write("enter price: ");
string? line = Console.ReadLine();
if (double.TryParse(line ?? "", out double price)) {
Console.WriteLine(price);
break;
}
Console.WriteLine("bad");
}
Спросите целое в цикле, пока ввод не станет корректным. Затем выведите квадрат числа.
Спросите дробное в цикле в формате вашей
среды. После успешного ввода выведите число,
увеличенное на 1.