Курс по Raku / Обекти, вход-изход и изключения / Изключения / Собствени изключения / Exercises
Грешка при отрицателно число
Задача
Дефинирайте собствен клас изключение Negative, който
наследява Exception, има атрибут n и чийто
метод message връща <n> is negative.
Напишете подпрограма check($n), която хвърля
Negative (носещ това n), когато аргументът ѝ е
под нулата, а иначе връща аргумента. След това в блок извикайте
check(-5) и използвайте фазер CATCH с
when Negative, за да отпечатате съобщението на
изключението.
Накрая, след блока, хвърлете още един Negative (с
n равно на -10), за да покажете, че
изключение, хвърлено там, където никакъв CATCH не го пази,
приключва програмата.
Пример
Програмата отпечатва:
-5 is negative
-10 is negative
in block <unit> at negative-error.raku line 24Решение
Навигация в курса
← Решение: Твърде голямо | Решение: Грешка при отрицателно число →