
Написать программу, в которой при каких-то (придумать самим) действиях пользователя будут возникать
и обрабатываться исключения: DivideByZeroException, FormatException, IndexOutOfRangeException, OverflowException, StackOverflowException.

Ответы на вопрос

===== PascalABC.NET =====
begin
var a := ReadlnInteger('Введите целое число:');
try
Println(1 div a);
except
on System.DivideByZeroException do
Println('Попытка деления на ноль');
end;
try
var s := ReadlnString('Введите число с дробной частью:');
s.ToReal.Println;
except
on System.FormatException do
Println('Неверная запись вещественного числа')
end;
var b := ArrRandom(5, -10, 10);
try
Println(b[ReadlnInteger('Какой элемент массива вывести?')])
except
on System.IndexOutOfRangeException do
Println('Неверный индекс')
end;
try
BigInteger.Parse(ReadlnString('Введите число:')).ToString.ToInteger
except
on System.OverflowException do
Println('Слишком большое число')
end
end.
Примечание: StackOverflowException невозможно перехватить в версии .NET выше 2.0.




Конечно! Вот пример программы на языке C#, где обрабатываются указанные вами исключения:
csharpusing System;
class Program
{
static void Main()
{
try
{
Console.WriteLine("Введите первое число: ");
int number1 = int.Parse(Console.ReadLine());
Console.WriteLine("Введите второе число: ");
int number2 = int.Parse(Console.ReadLine());
int result = DivideNumbers(number1, number2);
Console.WriteLine("Результат деления: " + result);
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Ошибка: деление на ноль.");
}
catch (FormatException ex)
{
Console.WriteLine("Ошибка: неверный формат числа.");
}
catch (IndexOutOfRangeException ex)
{
Console.WriteLine("Ошибка: выход за пределы массива.");
}
catch (OverflowException ex)
{
Console.WriteLine("Ошибка: переполнение числа.");
}
catch (StackOverflowException ex)
{
Console.WriteLine("Ошибка: переполнение стека.");
}
catch (Exception ex)
{
Console.WriteLine("Произошла ошибка: " + ex.Message);
}
}
static int DivideNumbers(int dividend, int divisor)
{
return dividend / divisor;
}
}
В этом примере программа запрашивает два числа у пользователя, а затем пытается разделить первое число на второе число. Если возникают исключения, такие как DivideByZeroException
, FormatException
, IndexOutOfRangeException
, OverflowException
или StackOverflowException
, программа перехватывает их и выводит соответствующие сообщения об ошибке. Если возникает любое другое исключение, оно также перехватывается, и выводится общее сообщение об ошибке.
Пожалуйста, обратите внимание, что перехват всех возможных исключений не всегда является хорошей практикой программирования. В реальных приложениях обычно стараются перехватывать только те исключения, которые они знают и обрабатывают специфическим образом.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili