Обработка исключений при неверном вводе данных - C#
Формулировка задачи:
Здравствуйте.Возникла проблема с реализацией исключения на ввод(необходимо,чтобы при вводе неправильного значения постоянно выводилось сообщение о повторе ввода.Как это реализовать с учётом моего кода?Примеры:
Код1:
Код2:
double x, y,R = 0; while (true) { try { Console.WriteLine("Введите R"); R = double.Parse(Console.ReadLine()); Console.WriteLine("Введите Х"); x = double.Parse(Console.ReadLine()); Console.WriteLine("Введите Y"); y = double.Parse(Console.ReadLine()); if (Math.Pow(x, 2) + Math.Pow(y, 2) <= Math.Pow(R, 2) && x <= R && y <= R || x - y >= 0) Console.WriteLine("True"); else Console.WriteLine("False"); Console.ReadKey(); } catch { Console.WriteLine("Введите правильно значение:"); } }
int R = 2; double x =0; double y = 0; Console.WriteLine("Введите х"); while(x<=0 || x>=0) { try { x = Double.Parse(Console.ReadLine()); if (x < -4 || x > 10) Console.WriteLine("Интервал значений должен быть [-4,10]"); else if (x < -2) y = x + 3; else if (x < 4) y = -0.5 * x; else if (x < 6) y = -2; else y = -Math.Sqrt(Math.Pow(R, 2) - Math.Pow((x - 8), 2)) - 2; Console.WriteLine("y=" + y); Console.WriteLine("Введите х"); } catch (FormatException) { Console.WriteLine("Введите правильно значение X:"); } } Console.ReadKey();
Решение задачи: «Обработка исключений при неверном вводе данных»
textual
Листинг программы
static void Main() { Console.Write("Enter number: "); double number = ReadDouble(IsNumber); Console.WriteLine("Kewl!"); } static double ReadDouble(Predicate<double> validate = null) { double result; while (!double.TryParse(Console.ReadLine(), out result) || (validate != null && !validate(result))) Console.Write("Invalid number, try again: "); return result; } static bool IsNumber(double value) { return !double.IsNaN(value); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д