Ejercicio: Realización de una actividad de desafío para detectar excepciones específicas

Completado

Los desafíos de código de este módulo se usan para reforzar lo que ha aprendido y ayudarle a obtener cierta confianza antes de continuar.

Detección de desafío de excepciones específicas

En este desafío, se le proporciona un ejemplo de código que genera varios tipos de excepciones diferentes. Un único try bloque de código contiene el código que genera las excepciones. Se incluyen varias catch cláusulas para controlar tipos de excepción específicos.

Debe actualizar el ejemplo de código para que se detecte cada excepción y se muestre el mensaje de error correspondiente en la consola.

Estos son los requisitos para este desafío:

  1. Asegúrese de que el archivo Program.cs contiene el ejemplo de código siguiente:

    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. Actualice el código para que cada mensaje de error se muestre en la consola cuando se produzca ese tipo de excepción.

  3. Compruebe que el código actualizado imprime los siguientes mensajes en la consola:

    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.
    

¡Buena suerte!