Está en la página 1de 10

Sesión 3: ESTRUCTURAS SELECTIVAS – LIHOVH

INTRODUCCION
En este laboratorio implementará sus algoritmos en el lenguaje de programación NetBeans, y probará el
funcionamiento lógico del control selectivo Si.

OBJETIVOS
Con este laboratorio el estudiante podrá:
- Traducir a código Java los ejercicios resueltos en pseudocódigos.
- Plantear correctamente en código Java el control selectivo if - else.
- Identificar los diversos errores de compilación y corregirlos adecuadamente.

OPCIONES DE CODIFICACIÓN
Pseudocódigo NetBeans Significado

Si if Indica el inicio de la condición.


Sino else Es la alternativa adicional a la condición del si.
Si if
Marca el inicio y fin de todas las acciones que se
{
} realizan dentro del control Si.
Finsi
 = Asignación de un valor o resultado a una variable.
= == Comparación en una condición

<> != Diferente, lo opuesto a igual.

Operador lógico que une dos condiciones donde


and &&
ambas deben cumplirse.
Operador lógico que une dos condiciones donde
or || cualquiera de las dos condiciones ebe cumplirse.
d
EjemploƐ:

CASO: Construir un algoritmo que calcule el pago de un cliente que compra un auto, sabiendo que, si el
costo original es $5000 o más paga un adicional del 8% de ese costo original por concepto de comisión y
si cuesta menos de $5000 el adicional es de 6%. Analizando:

Entradas Salidas
Costo original del auto (coa) Costo original del auto (coa) Pago
total del auto (pta)

Tenemos que calcular dos montos por concepto de comisión, uno del 8% y el otro del 6%, por tanto hay
que hacer una selección, y como tenemos dos caminos, debemos usar el control selectivo Si de
selección doble. La condición depende del costo original ya que si el costo es 5000 o más (coa >= 5000)
es 8% y sino es 6%.
Pseudocódigo Código JAVA - NetBeans
Procedimiento Principal ( ) {
Inicio double coa, pxcom, pta;
Real coa, pxcom, pta coa=Double.parseDouble(JoptionPane.showInputDialog
Leer coa (“Ingrese costo original del auto: ”));
Si (coa >= 5000) if (coa >= 5000) { pxcom = 0.08 * coa;
pxcom 0.08 * coa } else
Sino { pxcom = 0.06 * coa;
pxcom 0.06 * coa }
Finsi pta = coa + pxcom;
pta  coa + pxcom JOptionPane.showMessageDialog(null,”El costo original
Escribir (“El pago total por el auto es: ”, por el auto es: ”+coa+ “ El pago total por el auto es: ”+
pta) Fin pta);
}
Una empresa vende licencias de un programa a los precios dados en la siguiente tabla:

Versión Precio
Estudiante S/. 90.0
Profesional S/. 120.0
Empresarial S/. 150.0

Como oferta especial la empresa aplica un porcentaje de descuento sobre el importe de la compra de
acuerdo a la siguiente tabla:

Cantidad de licencias Descuento


11%
13%
14%

Diseñe un programa que permita efectuar ventas y muestre luego de cada una de ellas la siguiente
información:

- El importe de la compra
- El importe del descuento
- El importe a pagar
- La cantidad de licencias vendidas de cada tipo entre todas las ventas. - La cantidad de ventas
efectuadas de cada tipo entre todas las ventas
- El importe total acumulado de cada tipo de licencia entre todas las ventas
Sesión 3: Estructura Selectiva – LIHOVH>(MHUFLFLRV@
Objetivo: Desarrollar la lógica del alumno, mediante la resolución de problemas aplicando estructuras selectivas con
el uso del control Si

1. Construir un algoritmo que permita ingresar 3 números enteros positivos y que determine cuál de ellos es el
mayor y cuál es el menor.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {

Scanner lector = new Scanner( System.in );

double a, b, c;

System.out.println( "Introduce el primer número: ");


a = lector.nextDouble();
System.out.println( "Introduce el segundo número: ");
b = lector.nextDouble();
System.out.println( "Introduce el tercero número: ");
c = lector.nextDouble();

if (a>b && a>c){


System.out.println("el número mayor es: "+a);
}

if (b>a && b>c){


System.out.println("el número mayor es: "+b);
}

if (c>a && c>b){


System.out.println("el número mayor es: "+c);
}

else if (b>a && b>c){


System.out.println("Todos los numeros son iguales.");
}

}
2. Construir un algoritmo que calcule el pago de un cliente que compra un auto, sabiendo que, si el monto original es
$5000 o más se le cobra un adicional del 10% del costo original por concepto de comisión y si cuesta menos de
$5000 el adicional es de 8%.

package laboratorio3;
import java.util.Scanner;
public class ejer02 {
public static void main (String []args){
Scanner ejer02 = new Scanner(System.in);
double precio, pMayor, pMenor,pFinal;
System.out.println("INGRESE EL PRECIO DEL AUTO");
precio = ejer02.nextDouble();
if (precio >=5000){
pMayor = precio*10/100;
pFinal = precio+pMayor;
System.out.println("EL COSTO INICIAL DEL AUTO ES: $"+precio+" CON UNA COMISION DEL 10% DE:
$"+pMayor+" TIENE UN COSTO TOTAL DE: $"+pFinal);
}
else {
pMenor = precio*8/100;
pFinal = precio+pMenor;
System.out.println("EL COSTO INICIAL DEL AUTO ES: $"+precio+" CON UNA COMISION DEL 8% DE:
$"+pMenor+" TIENE UN COSTO TOTAL DE: $"+pFinal);
}

}
}
3. Construir un algoritmo que muestre el monto de alquiler mensual que debe cancelar un inquilino, sabiendo que
debe pagar como costo base S/50 mensuales por cada habitación que tenga la casa, adicional a ello debe pagar un
monto por la limpieza de la casa, este monto es de S/15 mensuales. Solo para las viviendas que tienen 10
habitaciones o más de adiciona S/5 mensuales por impuestos.

package Ejercicios;
import java.util.Scanner;
public class Ejercicio03 {
public static void main(String [] args) {
Scanner sc=new Scanner (System.in);
System.out.println("Ingrese el número de habitaciones: ");
int nh=sc.nextInt();

double precioh=(nh*50.00);
double precioF=(precioh+15.00);
System.out.println("El precio de las habitaciones más el servicio de limpieza es de: "+precioF);

if (nh>=10){
nh=(int) (precioF+5.00);
System.out.println("El precio de las habitaciones igual mayor a 10 es de: "+nh);

}
}
}
4. En un parque de diversiones para subir a un juego mecánico se tiene pagar un precio (Debe ingresar costo de
entrada), pero sobre ese precio se está ofreciendo un descuento que está en función a la edad de la persona,
construir un algoritmo que calcule el monto de descuento y el precio final a pagar por subir al juego mecánico, los
porcentajes de descuento se indican en la tabla:

Edad % Descuento
0 – 10 20%
11 – 18 10% 5%
19 – 40 30%
41 - más

package laboratorio3;
import java.util.Scanner;
public class ejer04 {
public static void main(String []args){
Scanner ejer04 = new Scanner(System.in);
int edad;
double entrada, descuento, pFinal;
System.out.println("INGRESE LA EDAD ");
edad = ejer04.nextInt();
System.out.println("INGRESE EL PRECIO DE LA ENTRADA");
entrada = ejer04.nextDouble();
if (edad <=10){
descuento = entrada*20/100;
pFinal = entrada+descuento;
System.out.println("EL PRECIO A PAGAR ES: S/."+pFinal);
}else if(edad >=11 && edad <=18){
descuento = entrada*10/100;
pFinal = entrada+descuento;
System.out.println("EL PRECIO A PAGAR ES: S/."+pFinal);
}else if (edad >= 19 && edad <=40){
descuento = entrada*5/100;
pFinal = entrada+descuento;
System.out.println("EL PRECIO A PAGAR ES: S/.");
}else{
descuento = entrada*30/100;
pFinal = entrada+descuento;
System.out.println("EL PRECIO A PAGAR ES: S/.");
}

}
5. Construir un algoritmo que calcule el sueldo final de un empleado que se le paga S/2500 mensuales; así mismo,
todos los empleados reciben un pago de gratificación de acuerdo a la cantidad de años que tiene trabajando en la
empresa, como se muestra en el siguiente cuadro:
Años labor en la empresa % de Gratificación
0a5 60%
6 a 10 80%
11 a más 100%

package javaapplication5;
import java.util.Scanner;

public class ejercicio05 {


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

double sueldomensual= 0;
double sueldofinal = 0;
int gratificacion = 0;
int años = 0;
System.out.println("Ingrese el sueldo mensual del trabajador");
sueldomensual=entrada.nextInt();
System.out.println("cuantos años trabajo");
años=entrada.nextInt();

if(sueldomensual= 2500){
años = sueldomensual*0.6;
}
else{
if(sueldomensual= 2500){
años = sueldomensual*0.80
}
else{
if(sueldomensual= 2500){
años= sueldomensual*1
}

sueldofinal=sueldomensual+años;
System.out.println("EL sueldo del empleado es: "+sueldofinal);
}

}
6. Una compañía de teléfonos ofrece a sus clientes tres tipos de planes:
Plan Pago mensual (S/.)
Simple 20
Intermedio 30
Premium 40
El cliente puede solicitar que le habiliten varios puntos de acceso telefónico en diferentes zonas de la casa o
empresa, si el cliente solicita más 5 puntos de acceso, tiene que pagar 8% más del monto mensual, si no, no hay
ningún pago adicional. Calcular el monto final que tiene que pagar el cliente. Debe ingresar el Plan y el número de
puntos, para mostrar el pago final que deberá pagar.

package lab3.pkg6;
import java. util.Scanner;
public class Lab36 {
public static void main(String[] args) {
int planTel,pagoIn,puntosAcceso;
double pagoTotal;
Scanner s= new Scanner ( System.in );
System.out.println("Escoger el plan telefonico");
System.out.println("1 <- Simple : 20 soles mensuales");
System.out.println("2 <- Intermedio : 30 soles mensuales");
System.out.println("3 <- Premium : 40 soles mensuales");
planTel=s.nextInt();
System.out.println("Indicar los puntos de acceso telefónico:");
puntosAcceso=s.nextInt();
switch(planTel){
case 1:
pagoIn=20;
System.out.println("Plan simple elegido");
if(puntosAcceso>4){
pagoTotal=pagoIn * 1.08;
System.out.println("El coste mensual será de :"+pagoTotal);
}
else{
pagoTotal=pagoIn;
System.out.println("El coste mensual será de :"+pagoTotal);
}
break;
case 2:
System.out.println("Plan intermedio elegido");
pagoIn=30;
if(puntosAcceso>4){
pagoTotal=pagoIn * 1.08;
System.out.println("El coste mensual será de :"+pagoTotal);
}
else{
pagoTotal=pagoIn;
System.out.println("El coste mensual será de :"+pagoTotal);
}
break;
case 3:
System.out.println("Plan premium elegido");
pagoIn=40;
if(puntosAcceso>4){
pagoTotal=pagoIn * 1.08;
System.out.println("El coste mensual será de :"+pagoTotal);
}
else{
pagoTotal=pagoIn;
System.out.println("El coste mensual será de :"+pagoTotal);
}
break;
}
}
}

7. Una tienda que vende pantalones, ofrece los siguientes precios:


Talla Precio (S/.)
Small 50.00 60.00
Medium 70.00
Large

El cliente puede llevar varios pantalones, pero todos de la misma talla.


La tienda efectúa rebajas a los clientes dependiendo de la cantidad de prendas que compre, como se indica:
Cantidad Descuento (%) sobre el precio inicial a pagar
1 – 10 2%
11 – 16 8%
17 – 20 10%

Diseñe un algoritmo que determine cuanto es el monto inicial, cuanto el monto de descuento y cuanto el monto
final.
package laboratorio3;
import java.util.Scanner;
public class ejer07 {
public static void main(String[]args){
Scanner ejer07 = new Scanner(System.in);
System.out.println("PRECIO POR TALLA DE LOS PANTALONES");
System.out.println("TALLA "+" PRECIO(S/.)");
System.out.println("1)SMALL "+" 50.00");
System.out.println("2)MEDIUM "+" 60.00");
System.out.println("3)LARGE "+" 70.00");
int cant,S=1,M=2,L=3,talla;
double descuento, p1=50, p2=60, p3=70, pFinal,pCnt;
System.out.println("SELECCIONE LA TALLA DEL PANTALON:");
System.out.println("1...SMALL");
System.out.println("2...MEDIUM");
System.out.println("3...LARGE");
talla = ejer07.nextInt();
System.out.println("INGRESE LA CANTIDAD A COMPRAR: ");
cant = ejer07.nextInt();
if(talla == 1){
if(cant <=10){
pCnt = p1*cant;
descuento = pCnt*2/100;
pFinal = descuento+pCnt;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=11 && cant<=16){
pCnt = p1*cant;
descuento = pCnt*8/100;
pFinal = descuento+pCnt;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=17 && cant <=20){
pCnt = p1*cant;
descuento = pCnt*10/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}
}else if(talla == 2){
if(cant <=10){
pCnt = p2*cant;
descuento = pCnt*2/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=11 && cant<=16){
pCnt = p2*cant;
descuento = pCnt*8/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=17 && cant <=20){
pCnt = p2*cant;
descuento = pCnt*10/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}
}else if(talla ==3){
if(cant <=10){
pCnt = p3*cant;
descuento = pCnt*2/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=11 && cant<=16){
pCnt = p3*cant;
descuento = pCnt*8/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}else if(cant >=17 && cant <=20){
pCnt = p3*cant;
descuento = pCnt*10/100;
pFinal = pCnt-descuento;
System.out.println("PRECIO POR "+cant+" PANTALONES: S/."+pCnt);
System.out.println("TIENE UN DESCUENTO DE: S/."+descuento);
System.out.println("EL MONTO A PAGAR ES DE: S/."+pFinal);
}
}
}
}

También podría gustarte