Работа с исключениями - C# (195235)
Формулировка задачи:
В общем, есть допустим у меня математический пример: найти сумму элементов от n = 1 до k,
((-1)^(n+1))/(2x-1)
все значения я записываю в массив.
Есть 2 исключения: деление на нуль (x - вещественное число), и переполнение массива.
Создать исключения необходимо самому:
Сделано. Теперь проверим это дело через throw и при выполнении этого скрипта будем обрабатывать исключения:
Вроде как готово, теперь о проблеме: допустим k равно 10, x равен 1,5, длина массива равна 5. Сразу же обрабатываются 2 исключения. Есть вариант вывода ВСЕХ исключений подряд?
class ZeroDivide : Exception { public ZeroDivide() : base("Деление на нуль запрещено!"){} }
class ArrayOverflow : Exception { public ArrayOverflow() : base("Индекс выходит на границы массива!") { } }
try{ //тут выполняется функция } catch(Exeption e) { Console.WriteLine("Ошибка: "+e.Message); }
Решение задачи: «Работа с исключениями»
textual
Листинг программы
try { //проверить деление на ноль throw new ZeroDivide(); } catch(ZeroDivide err) { Console.WriteLine("Ошибка: " + err.Message); // проверить индексацию массива throw new ArrayOverflow(); } catch(ArrayOverflow err) { Console.WriteLine("Ошибка: " + err.Message); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д