Menu
Coddy logo textTech

Cláusulas de guarda

Parte de la sección Lógica y Flujo del Journey de C# de Coddy. Lección 19 de 66.

Las cláusulas de guarda son instrucciones condicionales al principio de un método que comprueban casos extremos o entradas no válidas y retornan antes si se cumplen esas condiciones.

Creemos un método sin una cláusula de protección:

public void ProcessOrder(Order order)
{
    if (order != null)
    {
        // Procesar el pedido
        // Muchas líneas de código aquí...
    }
}

Ahora, reescribámoslo con una cláusula de protección:

public void ProcessOrder(Order order)
{
    if (order == null)
    {
        return; // Cláusula de guarda - salir temprano si order es null
    }
    
    // Procesar el order
    // Muchas líneas de código aquí...
}

Las cláusulas de guarda mejoran la legibilidad al reducir el anidamiento y gestionar los casos excepcionales al principio de un método.

challenge icon

Desafío

Fácil

Crea un método llamado DivideNumbers que reciba dos enteros, numerator y denominator.

  1. Añade una cláusula de protección para comprobar si el denominador es cero.
  2. Si el denominador es cero, muestra: "Cannot divide by zero" y devuelve 0.
  3. De lo contrario, divide el numerador entre el denominador y devuelve el resultado.

Pruébalo tú mismo

using System;

public class Program
{
    public static int DivideNumbers(int numerator, int denominator)
    {
        // Escribe tu código aquí
    }
    
    public static void Main()
    {
        // Lee las entradas desde la consola
        int numerator = Convert.ToInt32(Console.ReadLine());
        int denominator = Convert.ToInt32(Console.ReadLine());
        
        // Llama al método DivideNumbers
        int result = DivideNumbers(numerator, denominator);
        
        // Imprime el resultado
        Console.WriteLine(result);
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo

Practica por tu cuenta: Compilador de C# online