Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SECUENCIAS
/** 11. Escribe un programa que dada una hora determinada (horas y minutos),
* calcule los segundos que faltan para llegar a la medianoche.
*
* @author Luis José Sánchez
*/
public class S04Ejercicio11 {
public static void main(String[] args) {
System.out.print("hora: ");
int hora = Integer.parseInt(System.console().readLine());
System.out.print("minuto: ");
int minuto = Integer.parseInt(System.console().readLine());
int segundosTranscurridos = (hora * 3600) + (minuto * 60);
int segundosHastaMedianoche = (24 * 3600) - segundosTranscurridos;
//System.out.println("Desde las " + hora + ":" + minuto + " hasta la medianoche faltan " +
segundosHastaMedianoche + " segundos.");
System.out.printf("Desde las %02d:%02d hasta la medianoche faltan %d segundos.", hora, minuto,
segundosHastaMedianoche);
}
}
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
CONDICIONALES
/** Escribe un programa que pida por teclado un día de la semana
* y que diga qué asignatura toca a primera hora ese día.
* @author Luis José Sánchez
*/
public class S04Ejercicio01 {
public static void main(String[] args){
System.out.println("Por favor, introduzca un día de la semana y le diré");
System.out.print("qué asignatura toca a primera hora ese día: ");
String dia = System.console().readLine();
dia = dia.toLowerCase(); // convierte a minúsculas todas las letras
switch(dia) {
case "lunes":
case "martes":
case "miercoles":
case "miércoles":
System.out.println("Programación");
break;
case "jueves":
System.out.println("Sistemas Informáticos");
break;
case "viernes":
System.out.println("Bases de Datos");
break;
case "sabado":
case "sábado":
case "domingo":
System.out.println("¡Ese día no hay clase!");
break;
default:
System.out.println("El día introducido no es correcto.");
}
}
}
/** Realiza un programa que pida una hora por teclado y que muestre
* luego buenos días, buenas tardes o buenas noches según la hora.
* Se utilizarán los tramos de 6 a 12, de 13 a 20 y de 21 a 5
* respectivamente. Sólo se tienen en cuenta las horas, los minutos
* no se deben introducir por teclado.
*
* @author Luis José Sánchez
*/
public class S04Ejercicio02 {
public static void main(String[] args) {
System.out.print("Por favor, introduzca una hora del día (0 - 23): ");
int hora = Integer.parseInt(System.console().readLine());
if (((hora >= 21) && (hora < 24)) || ((hora <= 5) && (hora >= 0))) {
System.out.println("Buenas noches");
}
/** Vamos a ampliar uno de los ejercicios de la relación anterior para considerar
* las extras. Escribe un programa que calcule el salario semanal de un trabajador
* teniendo en cuenta que las horas ordinarias (40 primeras horas de trabajo) se pagan a 12 euros
* la
* hora. A partir de la hora 41, se pagan a 16 euros la hora.
*
* @author Luis José Sánchez
*/
public class S04Ejercicio04 {
public static void main(String[] args) {
int sueldoSemanal;
System.out.print("Por favor, introduzca el número de horas trabajadas durante la semana: ");
int horasTrabajadas = Integer.parseInt(System.console().readLine());
/** 8. Amplía el programa anterior para que diga la nota del boletín
* (insuficiente, suficiente, bien, notable o sobresaliente).
*
* @author Luis José Sánchez
*/
public class S04Ejercicio08{
public static void main(String[] args) {
System.out.println("Este programa calcula la media de tres notas.");
if (media < 5) {
System.out.print("Insuficiente");
} else if (media < 6) {
System.out.print("Suficiente");
} else if (media < 7) {
System.out.print("Bien");
} else if (media < 9) {
System.out.print("Notable");
} else {
System.out.print("Sobresaliente");
}
}
}
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
System.out.print("a = ");
double a = Double.parseDouble(System.console().readLine());
System.out.print("b = ");
double b = Double.parseDouble(System.console().readLine());
System.out.print("c = ");
double c = Double.parseDouble(System.console().readLine());
// 0x^2 + 0x + 0 = 0
if (discriminante < 0) {
System.out.println("La ecuación no tiene soluciones reales");
} else {
System.out.println("x1 = " + (-b + Math.sqrt(discriminante))/(2 *
a));
System.out.println("x2 = " + (-b - Math.sqrt(discriminante))/(2 *
a));
}
}
}
}
/** 10. Escribe un programa que nos diga el horóscopo a partir del día y
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
* el mes de nacimiento.
*
* @author Luis José Sánchez
*/
public class S04Ejercicio10 {
public static void main(String[] args) {
switch(mes) {
case 1:
if (dia < 21) {
horoscopo = "capricornio";
} else {
horoscopo = "acuario";
}
break;
case 2:
if (dia < 20) {
horoscopo = "acuario";
} else {
horoscopo = "piscis";
}
break;
case 3:
if (dia < 21) {
horoscopo = "piscis";
} else {
horoscopo = "aries";
}
break;
case 4:
if (dia < 21) {
horoscopo = "aries";
} else {
horoscopo = "tauro";
}
break;
case 5:
if (dia < 20) {
horoscopo = "tauro";
} else {
horoscopo = "géminis";
}
break;
case 6:
if (dia < 22) {
horoscopo = "géminis";
} else {
horoscopo = "cáncer";
}
break;
case 7:
if (dia < 22) {
horoscopo = "cáncer";
} else {
horoscopo = "Leo";
}
break;
case 8:
if (dia < 24) {
horoscopo = "leo";
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
} else {
horoscopo = "virgo";
}
break;
case 9:
if (dia < 23) {
horoscopo = "virgo";
} else {
horoscopo = "libra";
}
break;
case 10:
if (dia < 23) {
horoscopo = "libra";
} else {
horoscopo = "escorpio";
}
break;
case 11:
if (dia < 23) {
horoscopo = "escorpio";
} else {
horoscopo = "sagitario";
}
break;
case 12:
if (dia < 21) {
horoscopo = "sagitario";
} else {
horoscopo = "capricornio";
}
break;
default:
}
System.out.print("Su horóscopo es " + horoscopo);
}
}
/** 12. Realiza un minicuestionario con 10 preguntas tipo test sobre las
* asignaturas que se imparten en el curso. Cada pregunta acertada
* sumará un punto. El programa mostrará al final la calificación
* obtenida. Pásale el minicuestionario a tus compañeros y pídeles
* que lo hagan para ver qué tal andan de conocimientos en las
* diferentes asignaturas del curso.
*
* @author Luis José Sánchez
*/
public class S04Ejercicio12 {
public static void main(String[] args) {
int puntos = 0;
String respuesta;
System.out.println("CUESTIONARIO DE 1º DAM");
System.out.println("1. ¿Cuál de los siguientes tipos de datos de Java tiene más precisión?");
System.out.println("a) int\nb) double\nc) float");
System.out.print("=> ");
respuesta = System.console().readLine();
if (respuesta.equals("b")) {
puntos++;
System.out.println("Correcto");
} else {
System.out.println("Incorrecto");
}
System.out.println("2. ¿Cuál es el lenguaje que se utiliza para hacer consultas en las bases de
datos");
System.out.println("a) XML\nb) SELECT\nc) SQL");
System.out.print("=> ");
respuesta = System.console().readLine();
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
if (respuesta.equals("c")) {
puntos++;
System.out.println("Correcto");
} else {
System.out.println("Incorrecto");
}
System.out.println("3. Para insertar un hiperenlace en una página se utiliza la etiqueta...");
System.out.println("a) href\nb) a\nc) link");
System.out.print("=> ");
respuesta = System.console().readLine();
if (respuesta.equals("b")) {
puntos++;
System.out.println("Correcto");
} else {
System.out.println("Incorrecto");
}
int n;
boolean capicua = false;
System.out.print("Por favor, introduzca un número entero (de 5 cifras como máximo): ");
n = Integer.parseInt(System.console().readLine());
if (capicua) {
System.out.println("El número introducido es capicúa.");
} else {
System.out.println("El número introducido no es capicúa.");
}
}
}
/** 23. Escribe un programa que calcule el precio final de un producto según su
* base imponible (precio antes de impuestos), el tipo de IVA aplicado (general,
* reducido o superreducido) y el código promocional. Los tipos de IVA general,
* reducido y superreducido son del 21%, 10% y 4% respectivamente. Los códigos
* promocionales pueden ser nopro, mitad, meno5 o 5porc que significan
* respectivamente que no se aplica promoción, el precio se reduce a la mitad,
* se descuentan 5 euros o se descuenta el 5%. El ejercicio se da por bueno
* si se muestran los valores correctos, aunque los números no estén tabulados.
*
* Ejemplo:
* Introduzca la base imponible: 25
* Introduzca el tipo de IVA (general, reducido o superreducido): reducido
* Introduzca el código promocional (nopro, mitad, meno5 o 5porc): mitad
* Base imponible 25.00
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
int tipoIVANumerico = 0;
switch(tipoIVA) {
case "general":
tipoIVANumerico = 21;
break;
case "reducido":
tipoIVANumerico = 10;
break;
case "superreducido":
tipoIVANumerico = 4;
break;
default:
System.out.println("El tipo de IVA introducido no es correcto.");
}
// Calcula el descuento
double descuento = 0;
switch(codigoPromocional) {
case "nopro":
break;
case "mitad": // el precio se reduce a la mitad
descuento = precioSinDescuento / 2;
break;
case "meno5": // se descuentan 5 euros
descuento = 5;
break;
case "5porc": // se descuenta el 5%
descuento = precioSinDescuento * 0.05;
break;
default:
System.out.println("El código promocional introducido no es correcto.");
}
}
}
/** Ejercicio 24
*
* @author Luis José Sánchez
*/
public class S04Ejercicio24 {
public static void main(String[] args) {
System.out.println("1 - Programador junior");
System.out.println("2 - Prog. senior");
System.out.println("3 - Jefe de proyecto");
System.out.print("Introduzca el cargo del empleado (1 - 3): ");
int cargo = Integer.parseInt(System.console().readLine());
import java.uti.Scanner;
/**
* Ejercicio 25
*
* @author Luis José Sánchez
*/
public class S04Ejercicio25 {
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
if (conEscudo) {
escudoCadena = "Con escudo";
precioEscudo = 2.50f;
} else {
escudoCadena = "Sin escudo";
precioEscudo = 0;
}
System.out.println("Gracias. Aquí tiene el desglose de su compra.");
System.out.printf("Bandera de %5d cm2: %5.2f €\n", anchura * altura, (float)anchura * altura /
100);
System.out.printf("%s: %5.2f €\n", escudoCadena, precioEscudo);
System.out.printf("Gastos de envío: %5.2f €\n", 3.25);
System.out.printf("Total: %5.2f €\n", (float)anchura * altura / 100 +
precioEscudo + 3.25);
}
}
/**
* Ejercicio 26
*
* @author Luis José Sánchez
*/
if(tieneTarjeta) {
descuento = total * 0.1;
}
aPagar = total - descuento;
System.out.println("\nAquí tiene sus entradas. Gracias por su compra.");
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
if (entradasDePareja > 0) {
System.out.printf("Entradas de pareja %2d\n", entradasDePareja);
System.out.printf("Precio por entrada de pareja %5.2f €\n", 11.0);
}
if (entradasIndividuales > 0) {
System.out.printf("Entradas individuales %2d\n", entradasIndividuales);
System.out.printf("Precio por entrada individual %5.2f €\n",
precioEntradaIndividual);
}
System.out.printf("Total %5.2f €\n", total);
System.out.printf("Descuento %5.2f €\n", descuento);
System.out.printf("A pagar %5.2f €\n", aPagar);
}
}
import java.uti.Scanner;
/**
* Ejercicio 27
*
* @author Luis José Sánchez
*/
public class S04Ejercicio27 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("Elija un sabor (manzana, fresa o chocolate): ");
String sabor = s.nextLine();
double precioSabor = 0;
double precioNata = 0;
double precioNombre = 0;
String tipoChocolate = "";
switch (sabor) {
case "manzana":
precioSabor = 18;
break;
case "fresa":
precioSabor = 16;
break;
case "chocolate":
System.out.print("¿Qué tipo de chocolate quiere? (negro o blanco): ");
tipoChocolate = s.nextLine();
if (tipoChocolate.equals("negro")) {
precioSabor = 14;
} else if (tipoChocolate.equals("blanco")) {
precioSabor = 15;
}
break;
default:
}
System.out.print("¿Quiere nata? (si o no): ");
boolean conNata = s.nextLine().equals("si");
if (conNata) {
precioNata = 2.5;
System.out.printf("Con nata: %.2f €\n", precioNata);
}
if (conNombre) {
precioNombre = 2.75;
System.out.printf("Con nombre: %.2f €\n", precioNombre);
}
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
import java.uti.Scanner;
/**
* Ejercicio 28
*
* @author Luis José Sánchez
*/
public class S04Ejercicio28 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
if (jugada1.equals(jugada2)) {
System.out.println("Empate");
} else {
int ganador = 2;
switch(jugada1) {
case "piedra":
if (jugada2.equals("tijera")) {
ganador = 1;
}
break;
case "papel":
if (jugada2.equals("piedra")) {
ganador = 1;
}
break;
case "tijera":
if (jugada2.equals("papel")) {
ganador = 1;
}
break;
default:
}
System.out.println("Gana el jugador " + ganador);
}
}
import java.uti.Scanner;
/**
* Ejercicio 29
*
* @author Luis José Sánchez
*/
public class S04Ejercicio29 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String pitufo = "";
String resultado = "";
double precioComida = 0;
double precioBebida = 0;
// Comida
System.out.print("¿Qué ha tomado de comer? (palmera, donut o pitufo): ");
String comida = s.nextLine();
if (comida.equalsIgnoreCase("pitufo")) {
Fuente: Aprende Java con Ejercicios Luis José Sánchez González ISBN 978-84-608-2372-
Nota:
2. Verás dentro de los print, expresiones así… “%.2f\n %7.2f “ permiten dar formato simple a
las salidas de números.
INSTRUCCIONES
Sube un .pdf con los códigos pegados en texto y las captura de pantalla de consola de salida.