Упражнение. Выполнение действия вызова для перехвата определенных исключений

Завершённый

Проблемы кода в этом модуле используются для укрепления того, что вы узнали, и помогут вам получить некоторую уверенность, прежде чем продолжать работу.

Задача по перехвату конкретных исключений

В этом задании предоставлен пример кода, который создает несколько различных типов исключений. try Один блок кода содержит код, который создает исключения. Несколько catch предложений включаются для обработки определенных типов исключений.

Необходимо обновить пример кода, чтобы каждое исключение было поймано, и соответствующее сообщение об ошибке отображается в консоли.

Ниже приведены требования к этой задаче:

  1. Убедитесь, что файл Program.cs содержит следующий пример кода:

    try
    {
        int num1 = int.MaxValue;
        int num2 = int.MaxValue;
        int result = num1 + num2;
        Console.WriteLine("Result: " + result);
    
        string str = null;
        int length = str.Length;
        Console.WriteLine("String Length: " + length);
    
        int[] numbers = new int[5];
        numbers[5] = 10;
        Console.WriteLine("Number at index 5: " + numbers[5]);
    
        int num3 = 10;
        int num4 = 0;
        int result2 = num3 / num4;
        Console.WriteLine("Result: " + result2);
    }
    catch (OverflowException ex)
    {
        Console.WriteLine("Error: The number is too large to be represented as an integer." + ex.Message);
    }
    catch (NullReferenceException ex)
    {
        Console.WriteLine("Error: The reference is null." + ex.Message);
    }
    catch (IndexOutOfRangeException ex)
    {
        Console.WriteLine("Error: Index out of range." + ex.Message);
    }
    catch (DivideByZeroException ex)
    {
        Console.WriteLine("Error: Cannot divide by zero." + ex.Message);
    }
    
    Console.WriteLine("Exiting program.");
    
  2. Обновите код таким образом, чтобы каждое сообщение об ошибке отображалось в консоли при возникновении этого типа исключения.

  3. Убедитесь, что обновленный код выводит следующие сообщения в консоль:

    Error: The number is too large to be represented as an integer. Arithmetic operation resulted in an overflow.
    Error: The reference is null. Object reference not set to an instance of an object.
    Error: Index out of range. Index was outside the bounds of the array.
    Error: Cannot divide by zero. Attempted to divide by zero.
    Exiting program.
    

Удачи!