Programación 1º – UD4 – Estructura switch

Programación 1º – UD4 – Estructura switch

¿Qué es una estructura switch?

Es una estructura de selección múltiple. La usamos cuando necesitamos tomar una decisión entre muchas opciones posibles, basándonos en el valor de una variable.

En lugar de escribir muchos if, else if, else, que puede resultar largo y menos claro, usamos switch para elegir una sola opción entre varias.

Estructura básica del switch:

switch (expresion) {
case valor1:
// Código si expresion == valor1
break;
case valor2:
// Código si expresion == valor2
break;
...
default:
// Código si ningún case coincide
}
  • expresion: es la variable o valor que vamos a comparar (por ejemplo, un número o una letra).
  • case valorX:: si el valor de expresion coincide con valorX, se ejecutan las instrucciones debajo.
  • break: detiene el switch, para que no se sigan ejecutando los demás case.
  • default: se ejecuta si ningún case coincide. Es como el else.

Ejemplo:

int dia = 3;

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

En este ejemplo, se imprimirá: Miércoles, porque dia vale 3.

PROGRAMACIÓN

Preguntas de Programación de DAM

Actividades de Programación UD4 - 3.2. Estructura switch

Preguntas de Programación de 1ºDAM de la Unidad 4: Estructura de selección switch.

1 / 19

¿Qué se imprimirá?

int opcion = 2;
switch (opcion) {
    case 1:
        System.out.println("Uno");
        break;
    case 2:
        System.out.println("Dos");
        break;
    default:
        System.out.println("Otro");
}

2 / 19

¿Qué ocurre si no se pone break en un case?

3 / 19

¿Este código es válido?

char letra = 'a';
switch (letra) {
    case 'a':
        System.out.println("Vocal A");
        break;
    case 'e':
        System.out.println("Vocal E");
        break;
}

4 / 19

¿Qué se imprimirá?

int dia = 7;
switch (dia) {
    case 1:
        System.out.println("Lunes");
        break;
    case 2:
        System.out.println("Martes");
        break;
    default:
        System.out.println("Fin de semana");
}

5 / 19

¿Cuál es el propósito del default en un switch?

6 / 19

¿Qué se imprimirá?

int nota = 10;
switch (nota) {
    case 5:
        System.out.println("Aprobado");
    case 10:
        System.out.println("Excelente");
}

7 / 19

¿Qué se imprimirá?

int x = 5;
switch (x) {
    case 1:
        System.out.println("Uno");
        break;
    case 2:
        System.out.println("Dos");
    default:
        System.out.println("Otro");
}

8 / 19

¿Qué se imprimirá?

int mes = 4;
switch (mes) {
    case 1:
    case 2:
    case 3:
        System.out.println("Primer trimestre");
        break;
    case 4:
    case 5:
    case 6:
        System.out.println("Segundo trimestre");
        break;
}

9 / 19

¿Qué se imprimirá?

int valor = 2;
switch (valor) {
    case 1:
        System.out.println("Uno");
    case 2:
        System.out.println("Dos");
    case 3:
        System.out.println("Tres");
        break;
    default:
        System.out.println("Otro");
}

10 / 19

¿Qué se imprimirá?

int x = 5;
switch (x + 2) {
    case 7:
        System.out.println("Siete");
        break;
    case 8:
        System.out.println("Ocho");
        break;
    default:
        System.out.println("Otro número");
}

11 / 19

¿Qué falta en este código?

switch (3) {
    case 3:
        System.out.println("Tres");
}

12 / 19

¿Qué se imprimirá?

int edad = 18;
switch (edad) {
    case 17:
        System.out.println("Menor de edad");
        break;
    case 18:
        System.out.println("Mayor de edad");
        break;
}

13 / 19

¿Qué hará este código?

int num = 10;
switch (num) {
    default:
        System.out.println("Número no reconocido");
}

14 / 19

¿Este código es válido?

String fruta = "manzana";
switch (fruta) {
    case "manzana":
        System.out.println("Es una manzana");
        break;
    case "pera":
        System.out.println("Es una pera");
        break;
}

15 / 19

¿Cuál es la salida?

int dia = 3;
switch (dia) {
    default:
        System.out.println("Día no válido");
    case 1:
        System.out.println("Lunes");
        break;
    case 3:
        System.out.println("Miércoles");
}

16 / 19

¿Qué se imprimirá si letra = 'B'?

char letra = 'B';
switch (letra) {
    case 'A':
    case 'B':
        System.out.println("AB");
        break;
    case 'C':
        System.out.println("C");
    default:
        System.out.println("Default");
}

17 / 19

¿Qué se imprimirá?

int valor = 3;
switch (valor + 1) {
    case 3:
        System.out.println("Tres");
        break;
    case 4:
        System.out.println("Cuatro");
        break;
}

18 / 19

¿Este código funcionará?

final int OPCION = 1;
switch (OPCION) {
    case 1:
        System.out.println("Sí");
        break;
}

19 / 19

¿Qué se imprimirá?

int n = 1;
switch (n) {
    case 1:
        System.out.println("Caso 1");
    default:
        System.out.println("Por defecto");
    case 2:
        System.out.println("Caso 2");
        break;
}

Your score is

0%

Actividades de programación

Actividad 1: Menú de opciones simple

Crea un programa que muestre un menú con estas opciones:

  1. Saludar
  2. Decir la hora
  3. Decir adiós

El usuario introduce un número y el programa responde con un mensaje correspondiente. Usa switch para manejar las opciones.

import java.time.LocalTime;
import java.util.Scanner;

public class SwitchMenu {

    public static void main(String[] args) {
     Scanner scanner = new Scanner(System.in);
     System.out.println(“Elige una opción”);
     System.out.println(“1.- Saludar”);
     System.out.println(“2.- Decir la hora”);
     System.out.println(“3.- Decir adiós”);
     int opcion = scanner.nextInt();
     LocalTime horaActual = LocalTime.now(); // obtiene la hora actual del sistema
     switch (opcion){
         case 1:
             System.out.println(“¡Hola!”);
             break;
         case 2:
             System.out.println(“Son las ” + horaActual);
             break;
         case 3:
             System.out.println(“¡Adiós!”);
             break;
         default:
             System.out.println(“Opción no válida”);            
     }  
    }

Actividad 2: Días de la semana

Pide al usuario un número del 1 al 7.
Usa switch para mostrar el día de la semana correspondiente (1 → Lunes, 2 → Martes, …, 7 → Domingo).

import java.util.Scanner;

public class SwitchNumeros {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println(“Escribe un número del 1 al 7 y te diré a que día de la semana corresponde”);
        int dia = scanner.nextInt();
        switch(dia){
            case 1:
                System.out.print(“Es lunes”);
                break;
            case 2:
                System.out.println(“Es martes”);
            break;
            case 3: System.out.println(“Es miércoles”);
            break;
            case 4:
            System.out.println(“Es jueves”);
            break;
            case 5:
                System.out.println(“Es viernes”);
                break;
            case 6:
                System.out.println(“Es sábado”);
                break;  
            case 7:
                System.out.println(“Es domingo”);
                break;
            default:
                System.out.println(“El valor introducido no es válido”);
        }  
    }  
}

Actividad 3: Colores del semáforo

Pide al usuario que escriba un color: "rojo", "amarillo" o "verde".
Según el color, muestra el mensaje correspondiente:

  • Rojo → “¡Alto!”
  • Amarillo → “¡Precaución!”
  • Verde → “¡Sigue!”

import java.util.Scanner;

public class SwitchSemaforo {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
       
        System.out.println(“¿De qué color está el semáforo (rojo, amarillo o verde)?”);
        String color = scanner.nextLine().toLowerCase();
        switch(color){
            case “rojo”:
                System.out.println(“¡Alto!”);
                break;
            case “amarillo”:
                System.out.println(“¡Precaución!”);
                break;
            case “verde”:
                System.out.println(“¡Sigue!”);
                break;
            default:
                System.out.println(“Este color no está en el semáforo”);
    }    
    }
}

Actividad 4: Calculadora simple

Pide dos números al usuario y luego una operación: +, -, *, /.

Usa switch para ejecutar la operación elegida y mostrar el resultado.

import java.util.Scanner;

public class SwitchCalculadora {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println(“Vamos a hacer una operación”);
        System.out.println(“Escribe un número”);
        double num1 = scanner.nextDouble();
        System.out.println(“Escribe un segundo número”);
        double num2 = scanner.nextDouble();
        System.out.println(“Elije una operación (+, -, *, /)”);
        char operacion = scanner.next().charAt(0);
        switch(operacion){
            case ‘+’:
                System.out.println(num1  + ” + ” + num2 + ” = ” + (num1 + num2));
                break;
            case ‘-‘:
                System.out.println(num1  + ” – ” + num2 + ” = ” + (num1 – num2));
                break;
            case ‘*’:
                System.out.println(num1  + ” * ” + num2 + ” = ” + (num1 * num2));
                break;
            case ‘/’:
                System.out.println(num1  + ” / ” + num2 + ” = ” + (num1 / num2));
                break;
            default:
                System.out.println(“Esta operación no es posible”);
         
        }
    }
}