Обработка пользовательского исключения - C#
Формулировка задачи:
Добрый вечер.
Объясните пожалуйста как сделать чтобы мое исключение обрабатывало неправильный ввод ( когда вводят буквы знаки и прочее)
Код
Когда вводится буква или знак программа не обрабатывает эту ошибку!
Листинг программы
- public class DoomExeption:Exception
- {
- public DoomExeption() { }
- public DoomExeption(string message) : base(message) { }
- public DoomExeption(string message, Exception inner) : base(message, inner) { }
- }
Листинг программы
- public class Winter
- {
- public void ZeroK(int k)
- {
- if (k < 0) throw (new DoomExeption("Неправильный формат числа k "));
- }
- public void ZeroX(double x)
- {
- if (x == 0) throw (new DoomExeption("Введенное число = 0"));
- }
- public void ZeroL(int l)
- {
- if (l == 0) throw (new DoomExeption("Длина массива = 0"));
- }
- public double Massiv(int k, double x, int l)
- {
- double sum = 0;
- double[] mass = new double[l];
- try
- {
- for (int i = 1; i <= k; i++)
- {
- sum += (Math.Pow(-1, i + 1) / (2 * x - 1));
- mass[i - 1] += sum;
- }
- }
- catch (IndexOutOfRangeException)
- {
- }
- return sum;
- }
- }
Листинг программы
- class Program
- {
- static void Main(string[] args)
- {
- Winter low = new Winter();
- try
- {
- int k;
- Console.WriteLine(" Введите число k: ");
- k = int.Parse(Console.ReadLine());
- low.ZeroK(k);
- Console.WriteLine(" Введите число x: ");
- double x = double.Parse(Console.ReadLine());
- low.ZeroX(x);
- Console.WriteLine(" Введите длину массива: ");
- int l = int.Parse(Console.ReadLine());
- low.Massiv(k, x, l);
- Console.WriteLine(" Подсчет равен: " + low.Massiv(k, x, l));
- Console.ReadLine();
- }
- catch (DoomExeption e)
- {
- Console.WriteLine("DoomExeption: {0}", e.Message);
- Console.ReadLine();
- }
- }
- }
Решение задачи: «Обработка пользовательского исключения»
textual
Листинг программы
- public class DoomException : FormatException
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д