clase7 ejercicios estructura selectiva
TRANSCRIPT
![Page 1: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/1.jpg)
Estructura selección y estructura
repetitiva
Edisson Gutiérrez Jiménez
Universidad de Antioquia
Lógica y representación I
![Page 2: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/2.jpg)
Ejercicios• Diseñar un programa para encontrar el mayor de tres número enteros diferentes
import java.util.Scanner;
public class mayor {
public static void main(String[] args) {
int num1, num2, num3, mayor;
Scanner sc = new Scanner( System.in );
System.out.print("Ingrese primer número: ");
num1 = sc.nextInt();
System.out.print("Ingrese segundo número: ");
num2 = sc.nextInt();
System.out.print("Ingrese tercer número: ");
num3 = sc.nextInt();
if ((num1 > num2)&&(num1 > num3))
mayor = num1;
else
if (num2 > num3)
mayor = num2;
else
mayor = num3;
System.out.println("El número mayor es " + mayor);
}
}
![Page 3: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/3.jpg)
import java.util.Scanner;
public class triang {
public static void main(String[] args) {
float lado1, lado2, lado3;
Scanner sc = new Scanner( System.in );
System.out.print("Ingrese la primer longitud: ");
lado1 = sc.nextFloat();
System.out.print("Ingrese la segunda longitud: ");
lado2 = sc.nextFloat();
System.out.print("Ingrese la tercer longitud: ");
lado3 = sc.nextFloat();
if ((lado1+lado2 > lado3) && (lado1+lado3 > lado2) && (lado3+lado2 > lado1))
System.out.println("Los tres lados forman un triángulo");
else
System.out.println("Los tres lados NO forman un triángulo");
}
}
![Page 4: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/4.jpg)
Sentencia switch
• La sentencia switch se encarga de estructurar
una selección múltiple. Al contrario del
enunciado if-else que sólo podemos indicar
dos alternativas, maneja un número finito de
posibilidades. La estructura general del
enunciado switch es la siguiente:
![Page 5: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/5.jpg)
switch( expresión )
{
case constante1:
sentencia1;
...
break; ...
case constanteN:
sentenciaN;
...
break;
default:
sentencia; ...
break
}
![Page 6: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/6.jpg)
Explicación
• El valor de la expresión y de las constantes tiene queser de tipo char, byte, short o int. No hay lugar parabooleanos, reales ni long porque, en la ejecución,todos los valores que incorporamos se transforman envalores de tipo int.
• Al evaluar la expresión de switch, el intérprete buscauna constante con el mismo valor. Si la encuentra,ejecuta las sentencias asociadas a esta constante hastaque tropiece con un break. La sentencia break finalizala ejecución de esta estructura. Si no encuentraninguna constante que coincida con la expresión, buscala línea default. Si existe, ejecuta las sentencias que lesiguen. La sentencia default es opcional.
![Page 7: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/7.jpg)
Ejemplopublic class miniCalculadora {
public static void main(String[] args) {
int num1, num2;
Scanner sc = new Scanner( System.in );
System.out.print("Ingrese primer número: ");
num1 = sc.nextInt();
System.out.print("Ingrese segundo número: ");
num2 = sc.nextInt();
System.out.print("Ingrese la operación (+, -, * y /) ");
char op = sc.next().charAt(0);
System.out.print("El resultado es : ");
switch ( op ) {
case '+':
System.out.println( num1 + num2 );
break;
case '-':
System.out.println( num1 - num2 );
break;
case '*':
System.out.println( num1 * num2 );
break;
case '/':
System.out.println( num1 / num2 );
break;
default:
System.out.println("No existe la opción" );
break;
}
}
![Page 8: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/8.jpg)
Ejercicio
• Determinar la cantidad de dinero recibida por untrabajador por concepto de las horas semanalestrabajadas en una empresa, sabiendo que cuandolas horas de trabajo exceden de 40, el resto seconsidera horas extras y se pagan al doble de unahora normal, cuando no exceden de 8; si lashoras extras exceden de 8, se pagan las primeras8 al doble de lo que se paga una hora normal y elresto al triple. Del trabajador se conocen lossiguientes datos: nombres, número de horastrabajadas en la semana y valor recibido por unahora normal de trabajo.
![Page 9: Clase7 ejercicios estructura selectiva](https://reader030.vdocuments.co/reader030/viewer/2022020213/587627c61a28ab8b7b8b60e5/html5/thumbnails/9.jpg)
• Una empresa tiene cuatro escalas de salarionumeradas consecutivamente del 1 al 4, además,tiene un programa de incentivos de acuerdo a lacategoría y si el número de unidades producidases mayor de 50. Si está en la categoría 1 se le daun incremento de sueldo equivalente al 5% de susalario, si está en la 2 del 7%, en la 3 del 10% y enla 4 del 15%. Se tiene la siguiente información:nombre, salario mensual, categoría y número deunidades producidas. Hacer un algoritmo quedetermine el total devengado por un empleado.