Saltar la navegación

Estructura Alternativa

Concepto

Las estructuras alternativas en un lenguaje de programación son como las bifurcaciones en un camino. Permiten que un programa tome decisiones basadas en condiciones específicas y ejecute diferentes bloques de código según el resultado de esas condiciones. Es como cuando llegas a una encrucijada y decides qué camino tomar en función de ciertas señales o condiciones.

Imagina que estás planeando una salida con tus amigos y tienes dos opciones: ir al cine o ir a jugar al parque. La decisión de qué hacer puede depender del clima. Si hace buen tiempo, podrías optar por ir al parque; si llueve, entonces ir al cine sería una mejor opción. En este caso, la condición climática determina qué actividad realizar.

En programación, las estructuras alternativas se utilizan para tomar decisiones basadas en condiciones lógicas. Por ejemplo, podríamos escribir un programa que determine si un número es positivo o negativo. Si el número es mayor que cero, se mostrará un mensaje indicando que es positivo; de lo contrario, se mostrará un mensaje indicando que es negativo. Esta bifurcación en el programa se realiza utilizando una estructura alternativa, como una declaración "if-else" en muchos lenguajes de programación.

En resumen, las estructuras alternativas permiten que un programa tome decisiones basadas en condiciones específicas, lo que le otorga flexibilidad y capacidad de adaptación en función de diferentes situaciones.

Juan Pedro Pérez. Estructura Alternativa (CC BY-SA)

Lectura facilitada

Las estructuras alternativas en un lenguaje de programación son como las bifurcaciones en un camino. Permiten que un programa tome decisiones basadas en condiciones específicas y ejecute diferentes bloques de código según el resultado de esas condiciones. Es como cuando llegas a una encrucijada y decides qué camino tomar en función de ciertas señales o condiciones.

Imagina que estás planeando una salida con tus amigos y tienes dos opciones: ir al cine o ir a jugar al parque. La decisión de qué hacer puede depender del clima. Si hace buen tiempo, podrías optar por ir al parque; si llueve, entonces ir al cine sería una mejor opción. En este caso, la condición climática determina qué actividad realizar.

En programación, las estructuras alternativas se utilizan para tomar decisiones basadas en condiciones lógicas. Por ejemplo, podríamos escribir un programa que determine si un número es positivo o negativo. Si el número es mayor que cero, se mostrará un mensaje indicando que es positivo; de lo contrario, se mostrará un mensaje indicando que es negativo. Esta bifurcación en el programa se realiza utilizando una estructura alternativa, como una declaración "if-else" en muchos lenguajes de programación.

En resumen, las estructuras alternativas permiten que un programa tome decisiones basadas en condiciones específicas, lo que le otorga flexibilidad y capacidad de adaptación en función de diferentes situaciones.

Ejemplos

En Java, las estructuras alternativas más comunes son la declaración if, la declaración if-else, y la declaración switch. Aquí te proporciono un ejemplo de cada una:

Declaración if

Permite ejecutar un bloque de código si una condición es verdadera

  int edad = 18;

  if (edad >= 18) {

    System.out.println("Eres mayor de edad");

  } 

Declaración if-else

Permite ejecutar un bloque de código si una condición es verdadera y otro bloque si la condición es falsa.

  int edad = 16;

  if (edad >= 18) {
     System.out.println("Eres mayor de edad");
  } else {
     System.out.println("Eres menor de edad");
  }

Declaración switch

Permite evaluar una expresión y ejecutar diferentes bloques de código según el valor de esa expresión.

int diaSemana = 3;

String nombreDia;

switch (diaSemana) {
     case 1:
          nombreDia = "Lunes";
          break;
     case 2:
          nombreDia = "Martes";
          break;
     case 3:
          nombreDia = "Miércoles";
          break;
     default:
          nombreDia = "Día no válido";
}
System.out.println("Hoy es " + nombreDia);

En este ejemplo, si diaSemana es 3, la salida será "Hoy es Miércoles". Si diaSemana tiene otro valor diferente a los casos especificados, se ejecutará el bloque de código dentro de default, que en este caso establece "Día no válido" como nombreDia.

Actividades

Utilizando el lenguaje de programación Java, resuelve los siguientes ejercicios utilizando las estructuras alternativas:

Ejercicio: Determinar si el número es par o impar

import java.util.Scanner;

public class ParImpar {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    // Solicitar al usuario ingresar un número
    System.out.print("Ingresa un número entero: ");
    int numero = scanner.nextInt();
    // Determinar si el número es par o impar
    if (numero % 2 == 0)

    {

      System.out.println("El número ingresado es par.");
    } else {
        System.out.println("El número ingresado es impar.");
   }
    // Cerrar el scanner
    scanner.close();
   }
}

Ejercicio: Determinar si un número es positivo, negativo o cero

import java.util.Scanner;

public class Main { public static void main(String[] args) {

  Scanner scanner = new Scanner(System.in);

  // Solicitar al usuario ingresar un número

  System.out.print("Ingresa un número: ");

  double numero = scanner.nextDouble();

// Determinar si el número es positivo, negativo o cero

if (numero > 0)

{

  System.out.println("El número ingresado es positivo.");

} else if (numero < 0)

{

  System.out.println("El número ingresado es negativo.");

} else

{

System.out.println("El número ingresado es cero.");

}

// Cerrar el scanner

scanner.close();

}

}

Ejercicio: Calcular el precio de un producto con descuento

Escribe un programa en Java que calcule el precio final de un producto después de aplicarle un descuento. El programa debe solicitar al usuario ingresar el precio original del producto y un código de descuento (1 para 10%, 2 para 20%, 3 para 30%, y 0 para ningún descuento). Luego, debe calcular el precio final y mostrarlo en pantalla.

import java.util.Scanner;

public class PrecioProducto {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    // Solicitar al usuario ingresar el precio original del producto
    System.out.print("Ingresa el precio original del producto: ");
    double precioOriginal = scanner.nextDouble();

    // Solicitar al usuario ingresar el código de descuento
    System.out.println("Selecciona el código de descuento:");
    System.out.println("1 - 10%");
    System.out.println("2 - 20%");
    System.out.println("3 - 30%");
    System.out.println("0 - Ningún descuento");
    System.out.print("Ingresa el código de descuento: ");
    int codigoDescuento = scanner.nextInt();

    // Calcular el precio final con descuento
    double precioFinal;
    switch (codigoDescuento) {
      case 1:
        precioFinal = precioOriginal * 0.9; // 10% de descuento
        break;
      case 2:
        precioFinal = precioOriginal * 0.8; // 20% de descuento
        break;
      case 3:
        precioFinal = precioOriginal * 0.7; // 30% de descuento
        break;
      default:
        precioFinal = precioOriginal; // Ningún descuento
        break;
      }

    // Mostrar el precio final del producto
    System.out.println("El precio final del producto es: $" + precioFinal);

    // Cerrar el scanner
    scanner.close();
  }
}

Lectura facilitada

Utilizando el lenguaje de programación Java, resuelve los siguientes ejercicios utilizando las estructuras alternativas:

Ejercicio: Determinar si el número es par o impar

import java.util.Scanner;

public class ParImpar {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    // Solicitar al usuario ingresar un número
    System.out.print("Ingresa un número entero: ");
    int numero = scanner.nextInt();
    // Determinar si el número es par o impar
    if (numero % 2 == 0)

    {

      System.out.println("El número ingresado es par.");
    } else {
        System.out.println("El número ingresado es impar.");
   }
    // Cerrar el scanner
    scanner.close();
   }
}

Ejercicio: Determinar si un número es positivo, negativo o cero

import java.util.Scanner;

public class Main { public static void main(String[] args) {

  Scanner scanner = new Scanner(System.in);

  // Solicitar al usuario ingresar un número

  System.out.print("Ingresa un número: ");

  double numero = scanner.nextDouble();

// Determinar si el número es positivo, negativo o cero

if (numero > 0)

{

  System.out.println("El número ingresado es positivo.");

} else if (numero < 0)

{

  System.out.println("El número ingresado es negativo.");

} else

{

System.out.println("El número ingresado es cero.");

}

// Cerrar el scanner

scanner.close();

}

}

Ejercicio: Calcular el precio de un producto con descuento

Escribe un programa en Java que calcule el precio final de un producto después de aplicarle un descuento. El programa debe solicitar al usuario ingresar el precio original del producto y un código de descuento (1 para 10%, 2 para 20%, 3 para 30%, y 0 para ningún descuento). Luego, debe calcular el precio final y mostrarlo en pantalla.

import java.util.Scanner;

public class PrecioProducto {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    // Solicitar al usuario ingresar el precio original del producto
    System.out.print("Ingresa el precio original del producto: ");
    double precioOriginal = scanner.nextDouble();

    // Solicitar al usuario ingresar el código de descuento
    System.out.println("Selecciona el código de descuento:");
    System.out.println("1 - 10%");
    System.out.println("2 - 20%");
    System.out.println("3 - 30%");
    System.out.println("0 - Ningún descuento");
    System.out.print("Ingresa el código de descuento: ");
    int codigoDescuento = scanner.nextInt();

    // Calcular el precio final con descuento
    double precioFinal;
    switch (codigoDescuento) {
      case 1:
        precioFinal = precioOriginal * 0.9; // 10% de descuento
        break;
      case 2:
        precioFinal = precioOriginal * 0.8; // 20% de descuento
        break;
      case 3:
        precioFinal = precioOriginal * 0.7; // 30% de descuento
        break;
      default:
        precioFinal = precioOriginal; // Ningún descuento
        break;
      }

    // Mostrar el precio final del producto
    System.out.println("El precio final del producto es: $" + precioFinal);

    // Cerrar el scanner
    scanner.close();
  }
}

Actividad a entregar

Realiza una infografía en la que expliques las distintas estructuras alternativas que has visto, indicando un ejemplo de cada una de ellas.

Creado con eXeLearning (Ventana nueva)