1. Una persona deposita hoy al Banco cierta cantidad de dinero, donde le reconocen un interés del 2% mensual, capitalizado mensualmente. ¿Cuál será el saldo al cabo de 5 años? Formula a utilizar: Valor Futuro = Valor Presente * (1 + interes) ^ meses Para solucionar el Ejercicio, se requiere que usted desarrolle un algoritmo que le permita conocer a una persona ¿Cuál será el saldo al cabo de 5 años?, si deposita hoy cierta cantidad de dinero. Como resultado se debe imprimir en pantalla: package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio1 { public static void main(String[] args) { double valorPresente; int meses; double valorFuturo; int anios; valorPresente =Double.parseDouble(JOptionPane.showInputDialog(null, "Introduzca el valor presente de dinero" )); meses =Integer.parseInt(JOptionPane.showInputDialog(null, "Introduzca el numero de meses que su dinero ha estado en el banco")); valorFuturo = valorPresente*((double)Math.pow(1.02,meses)); anios = meses/12; JOptionPane.showMessageDialog(null, "El valor consignado fue de " + valorPresente + " entonces el valor futuro en " + anios + " anios sera " + valorFuturo ); } } 2. Una frutería ofrece las manzanas a $4.200 el kilo, con un descuento de acuerdo a la siguiente tabla: Desarrollar un algoritmo que le permita a la frutería y al cliente conocer cuánto pagará un cliente que compre manzanas.Muestre los resultados así: La compra de N kilos tiene un valor de $, pero usted tiene un descuento por valor de $, por lo tanto el valor a pagar es: $. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio2 { public static void main(String[] args) { int kilos; double valorPagar; double valorReal; double descuento; kilos =Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el numero de kilos de manzana" )); if (kilos<=2) { valorPagar=kilos*4200; JOptionPane.showMessageDialog(null, "La compra de " + kilos + " Kilos tiene un valor de " + valorPagar + " Usted tendrá " + "que pagar la suma anteriormente mencionada porque su compra "
+ "es poca y no tiene descuento "); } else if (kilos<=5) { valorPagar=(kilos*4200)-(kilos*4200)*0.1; valorReal=kilos*4200; descuento=(kilos*4200)*0.1; JOptionPane.showMessageDialog(null, "La compra de " + kilos + " Kilos tiene un valor de " + valorReal + " pero usted tiene " + "un descuento por valor de " + descuento + "por lo tanto el valor a pagar es " + valorPagar); } else if (kilos<=10) { valorPagar=(kilos*4200)-(kilos*4200)*0.15; valorReal=kilos*4200; descuento=(kilos*4200)*0.15; JOptionPane.showMessageDialog(null, "La compra de " + kilos + " Kilos tiene un valor de " + valorReal + " pero usted tiene " + "un descuento por valor de " + descuento + "por lo tanto el valor a pagar es " + valorPagar); } else { valorPagar=(kilos*4200)-(kilos*4200)*0.2; valorReal=kilos*4200; descuento=(kilos*4200)*0.2; JOptionPane.showMessageDialog(null, "La compra de " + kilos + " Kilos tiene un valor de " + valorReal + " pero usted tiene " + "un descuento por valor de " + descuento + "por lo tanto el valor a pagar es " + valorPagar); } } }
3. Dada la siguiente función: Y = x^2 – 2x Se requiere desarrollar un algoritmo que imprima en pantalla, para valores de x desde 1 a 10, lo siguiente: a) La suma de todos los valores de Y. b) Valores de Y múltiplos de 3. c) Suma de los valores de Y múltiplos de 3. d) Valores de Y cuyo último digito sea 5. e) Suma de los valores de Y cuyo último digito es 5. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio3 { public static void main(String[] args) { int suma; int suma3; int suma5; int ultimo5; int y; int x; suma=0; suma3=0; suma5=0; for (x=1; x<=10; x++) { y=(int)Math.pow(x,2)-2*x; suma=suma+y;
if ((y%3)==0) { JOptionPane.showMessageDialog(null, y + " es un multiplo de 3 "); suma3=suma3+y; } } for (x=1; x<=10; x++) { y=(int)Math.pow(x,2)-2*x; ultimo5=y%10; if (ultimo5==5) { JOptionPane.showMessageDialog(null, y + " es un valor que tiene como ultimo digito 5 "); suma5=suma5+y; } } JOptionPane.showMessageDialog(null, "La suma de los valores que tiene " + "como ultimo digito 5 es " + suma5); JOptionPane.showMessageDialog(null, "La suma de los valores de y multiplos de 3 es " + suma3); JOptionPane.showMessageDialog(null, "La suma de todos los valores de y es " + suma); } } 4. Desarrollar un algoritmo que lea un número N entero positivo de cualquier número de dígitos, calcule la suma de sus dígitos y que imprima en pantalla el número leído y la suma de sus dígitos. Se requiere que en el desarrollo utilice la Estructura Cíclica Mientr package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio4 { public static void main(String[] args) { double numero; double suma; double valor1; double valor2; double valor3; double valor4; numero=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese un número para hallarle la suma de sus dígitos " )); suma=0; valor3=0; valor4=0; valor1=numero/10; valor2=numero%10; suma=suma+valor2; valor1=valor1-(valor2*0.1); while (valor1>0) { valor3=valor1/10; valor4=valor1%10; suma=suma+valor4; valor1=valor3-(valor4*0.1); }
JOptionPane.showMessageDialog(null, "El numero ingresado fue " + numero + " y la suma de sus digitos es " + suma);
} } 5. Desarrollar un algoritmo que calcule el salario neto que debe recibir un vendedor de un almacén. Se debe tener en cuenta si tiene derecho o no al auxilio de transporte. Para el desarrollo del ejercicio tenga en cuenta las siguientes formulas: Sueldo devengado = salario básico * días laborados / 30 Días laborados = debe ser entre 1 y 30. Auxilio de Transporte: Lo reciben los empleados cuyo salario básico sea menor o igual a 2 salarios mínimos legales vigentes.Salario Mínimo Legal Vigente (2013): 589500 Auxilio de Transporte = 70500 * días laborados / 30 (año 2013 en Colombia). Comisión de Ventas: En la empresa se tiene estipulado dar una comisión de ventas del 2% sobre las ventas del mes de cada vendedor. Total devengado = sueldo devengado + comisión de ventas. Total deducciones = descuentos por prestamos. Salario Neto = Total devengado – Total deducciones. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio5 { public static void main(String[] args) { int cedula; String nombre; double sueldoDevengado; double salarioBasico; int dias; double auxilioTransporte; double ventas; double comisionVentas; double totalDevengado; double descuentoPrestamos; double totalDeducciones; double salarioNeto; cedula=Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el numero de identificacion del vendedor: " )); nombre=JOptionPane.showInputDialog(null, "Ingrese el nombre del vendedor: "); salarioBasico=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese el salario basico: ")); dias=Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el numero de dias laborados entre 1 y 30: " )); sueldoDevengado=(salarioBasico*dias)/30; if (salarioBasico<=(589500*2)) { auxilioTransporte=(70500*dias)/30; } else { auxilioTransporte=0; } ventas=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese el valor de las ventas: "));
comisionVentas=ventas*0.02; totalDevengado=sueldoDevengado+comisionVentas; descuentoPrestamos=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese los descuentos por prestamos: ")); totalDeducciones=descuentoPrestamos; salarioNeto=totalDevengado-totalDeducciones; JOptionPane.showMessageDialog(null, "Cedula empleado: " + cedula + "\n" + "Nombre empleado: " + nombre + "\n" + "Salario basico: " + salarioBasico + "\n" + "Auxilio de transporte: " + auxilioTransporte + "\n" + "Comisicion de ventas: " + comisionVentas + "\n" + "Prestamos: " + descuentoPrestamos + "\n" + "Salario neto a recibir: " + salarioNeto); } } 6. Hacer un algoritmo que imprima los primeros 20 términos de la siguiente serie: 1, 3, 6, 10, 15, 21, 28,…….. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio6 { public static void main(String[] args) { int i; int n; for (n=1; n<=20; n++) { i=n*(n+1)/2; JOptionPane.showMessageDialog(null, "El termino " + n + " de la serie es " + i); } } } 7. Desarrollar un algoritmo que permita calcular los siguientes datos de una fiesta: ¿Cuántas personas asistieron a la fiesta? ¿Cuántos hombres y cuantas mujeres? -Promedio de edades por sexo. -La edad de la persona más joven que asistió.Consideraciones: -No se permiten menores de edad a la fiesta. -Ingresar datos hasta que se ingrese una edad igual a cero. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio7 { public static void main(String[] args) { int edad; int sexo; int sumaHombres; int sumaMujeres; int sumaTotal; int promedioHombres; int promedioMujeres; int edadHombres;
int edadMujeres; int edadJoven; sumaHombres=0; sumaMujeres=0; edadHombres=0; edadMujeres=0; edadJoven=100; JOptionPane.showMessageDialog(null, "Ingrese la edad como 0 cuando " + "quiera que el programa se detenga" + "\n" + "Ingrese una edad que " + "este por encima de 17 porque los menores de edad no estan permitidos "); edad=Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese la edad del invitado" )); while (edad>0) { JOptionPane.showMessageDialog(null, "Ingrese el sexo del invitado, " + "1 para hombre y 0 para mujer"); sexo=Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el" + "sexo del invitado, 1 para hombre y 0 para mujer" )); if (sexo==1) { sumaHombres=sumaHombres+1; edadHombres=edadHombres+edad; } else { sumaMujeres=sumaMujeres+1; edadMujeres=edadMujeres+edad; } if (edad18) { edadJoven=edad; } edad=Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese la edad del invitado" )); } sumaTotal=sumaHombres+sumaMujeres; promedioHombres=edadHombres/sumaHombres; promedioMujeres=edadMujeres/sumaMujeres; JOptionPane.showMessageDialog(null, "El numero de invitados que " + "asistieron a la fiesta fueron: " + sumaTotal + "\n" + "El numero de " + "hombres que asistieron a la fiesta fueron: " + sumaHombres + "\n" + "El numero de mujeres que asistieron a la fiesta fueron: " + sumaMujeres + "\n" + "El promedio de las edades de los hombres que asistieron a la " + "fiesta es: " + promedioHombres + "\n" + "El promedio de las edades de " + "las mujeres que asistieron a la fiesta es: " + promedioMujeres + "\n" + "La edad de la persona mas joven es: " + edadJoven); } } 8. Hacer un algoritmo que imprima el costo de una llamada telefónica, capturando la duración de la llamada en minutos y conociendo lo siguiente: •Toda llamada que dure tres minutos o menos tiene un costo de $200. •Cada minuto adicional cuesta $30. package Ejercicios; import javax.swing.JOptionPane;
public class Ejercicio8 { public static void main(String[] args) { int duracion; int duracionAdicional; int totalPagar; duracion =Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese la durancion de la llamada en minutos ")); if (duracion<4) { JOptionPane.showMessageDialog(null, "Tiene que pagar $200" ); } else { duracionAdicional=duracion-3; totalPagar=(duracionAdicional*30)+200; JOptionPane.showMessageDialog(null, "Tiene que pagar $" +totalPagar); } } } 9. Un grupo de 10 estudiantes presentan un examen de Física. Hacer un algoritmo que lea por cada estudiante la calificación obtenida. Al finalizar calcule e imprima: •La cantidad de estudiantes que obtuvieron una calificación menor a 50. •La cantidad de estudiantes que obtuvieron una calificación de 50 o más pero menor que 80. •La cantidad de estudiantes que obtuvieron una calificación de 70 o más pero menor que 80. •La cantidad de estudiantes que obtuvieron una calificación de 80 o más. La calificación obtenida en el examen de física debe ser entre 1 y 100. package Ejercicios; import javax.swing.JOptionPane; public class Ejercicio9 { public static void main(String[] args) { double calificacion; int i; double sumaMenor50; double sumaMenor70; double sumaMenor80; double sumaMenor100; sumaMenor50=0; sumaMenor70=0; sumaMenor80=0; sumaMenor100=0; for (i=1; i<=10; i++) { calificacion=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese la calificacion del estudiante " )); while (1>calificacion || calificacion>100) { JOptionPane.showMessageDialog(null, "Calificacion fuera del rango" ); calificacion=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese de nuevo la calificacion del estudiante entre 1 a 100" )); }
if (calificacion<50){ sumaMenor50=sumaMenor50+1; } else if (calificacion<70){ sumaMenor70=sumaMenor70+1; } else if (calificacion<80){ sumaMenor80=sumaMenor80+1; } else { sumaMenor100=sumaMenor100+1; } } JOptionPane.showMessageDialog(null, "La cantidad de estudiantes que " + "obtuvieron una calificacion menor a 50 es" + sumaMenor50 + "\n" + "La cantidad de estudiantes que obtuvieron una calificacion menor a 70 es" + sumaMenor70 + "\n" + "La cantidad de estudiantes que obtuvieron una " + "calificacion menor a 80 es" + sumaMenor80 + "\n" + "La cantidad de estudiantes" + " que obtuvieron una calificacion menor a 100 es" + sumaMenor100); }
}