Semana 5

 Estructura de control Swicht Case.

La instrucción de selección múltiple switch realiza distintas acciones, con base en los posi-
bles valores de una expresión entera constante de tipo byte, short, int o char. A partir de Java SE 7, la expresión también puede ser un objeto String.

La instrucción switch no cuenta con un mecanismo para evaluar rangos de valores, por ello
cada valor que deba evaluarse se tiene que enumerar en una etiqueta case separada. Cada case puede tener varias instrucciones. La instrucción switch es distinta de otras instrucciones de control, en cuanto a que no requiere llaves alrededor de varias instrucciones de cada case.


Case sin una instrucción break.

Sin instrucciones break, cada vez que ocurre una coincidencia en el switch, se ejecutan las instrucciones
para ese case y los subsiguientes, hasta encontrar una instrucción break o el final del switch. A menudo a esto se le conoce como que las etiquetas case “se pasarían” hacia las instrucciones en las etiquetas case subsiguientes (esta característica es perfecta para escribir un programa conciso que muestre la canción repetitiva “Los doce días de Navidad”

El caso default.

Si no ocurre una coincidencia entre el valor de la expresión de control y una etiqueta case, se ejecuta el caso default.

Algunos ejemplos son los siguientes.

1)Desarrolle un programa que dado el sueldo y la categoría de un trabajador, calcule el aumento correspondiente teniendo en cuenta la siguiente tabla. Imprima la categoría del trabajador y su nuevo sueldo.








2) Escriba un programa en donde se puedan calcular las siguientes fórmulas:

Fuerza = masa * aceleración
Densidad= masa / volumen
Masa = densidad * volumen
Volumen = masa /densidad
package formulas.pkgswitch;
import java.util.Scanner;
/**
 *
 * @author angel
 */
public class FormulasSwitch {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner dato=new Scanner(System.in);
        double f, m, a, v, d;
        int opcion;
        System.out.println("1. Fuerza, 2. Desindad, 3. Masa, 4. Volumen ");
        System.out.println("Ingresar opcion ");
        opcion=dato.nextInt();
        switch(opcion){
            case 1:
                System.out.println("Ingrese masa");
                m=dato.nextDouble();
                System.out.println("Ingrese aceleracion");
                a=dato.nextDouble();
                f=m*a;
                System.out.println("El resultado de fuerza es: "+f);
                break;
            case 2:
                System.out.println("Ingrese masa");
                m=dato.nextDouble();
                System.out.println("Ingrese volumen");
                v=dato.nextDouble();
                d=m/v;
                System.out.println("El reesultado de densidad es "+d);
                break;
            case 3:
                System.out.println("Ingrese densidad");
                d=dato.nextDouble();
                System.out.println("Ingrese volumen");
                v=dato.nextDouble();
                m=d*v;
                 System.out.println("El reesultado de masa es "+m);
            case 4:
                System.out.println("Ingrese densidad");
                d=dato.nextDouble();
                System.out.println("Ingrese masa");
                m=dato.nextDouble();
                v=m/d;
                System.out.println("El resultado de volumen es "+v);
                break;
            default :
                System.out.println("Ingrese opciones del 1 al 4");

        }
    }
}



3) Desarrolle un programa que pida la calificación alfanumérica
(A, B, C o D) de un estudiante y lo clasifique como:
 Nota en el rango de 85-100, si digita A
 Nota en el rango de 65-84, si digita B
 Nota en el rango de 45-64, si digita C
 Nota en el rango de 0-44, si digita D


package calificaciones.swicht;
import java.util.Scanner;
/**
 *
 * @author angel
 */
public class CalificacionesSwicht {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner dato=new Scanner(System.in);
        char c;
        System.out.println("Ingrese calificacion (A, B, C o D)");
        c=dato.next().charAt(0);
        switch(c){
        case 'A': case 'a':
                System.out.println("Nota en el rango de 85 a 100");
                break;
        case 'B': case 'b':
                System.out.println("Nota en el rango de 65 a 84");
                break;
        case 'C': case 'c':
                System.out.println("Nota en el rango de 45 a 64");
                break;
        case 'D': case 'd':
                System.out.println("Nota en el rango de 0 a 44");
                break;
        default:
            System.out.println("Ingrese valores A, B, C, D");
        }
    }
    
}



Dejo un pequeño video para que la explicacion sea un poco mas clara.


Comentarios

Entradas populares de este blog

Semana 6.

Semana No. 4

Semana No. 1