Compare commits

...
2 Commits
Author SHA1 Message Date
PC de clase 8f7e450a26 parque atracciones (no terminado) 2026-11-09 13:07:50 +01:00
PC de clase dc0a3aacb3 Semaforos 2026-11-09 13:07:23 +01:00
2 changed files with 115 additions and 0 deletions

No files matched your search

+30
View File
@@ -0,0 +1,30 @@
public class Constructores1 {
public static class Semaforo {
public static enum Estados{
Rojo,
Ambar,
Verde,
}
private Estados estado;
Semaforo(Estados estado){
this.estado = estado;
}
public void imprimirEstado(){
System.out.printf("El semaforo está en %s\n", this.getEstado());
}
public Estados getEstado(){
return this.estado;
}
public void setEstado(Estados estado){
this.estado = estado;
}
}
public static void main(String[] args) {
Semaforo semaforo = new Semaforo(Semaforo.Estados.Rojo);
semaforo.imprimirEstado();
semaforo.setEstado(Semaforo.Estados.Ambar);
semaforo.imprimirEstado();
semaforo.setEstado(Semaforo.Estados.Verde);
semaforo.imprimirEstado();
}
}
+85
View File
@@ -0,0 +1,85 @@
import java.util.*;
public class ParqueAtracciones {
private static int totalEntradas = 0;
private static int totalAdultos = 0;
private static int totalNinos = 0;
private static int recaudacion = 0;
private static int totalDescuentos = 0;
private static Scanner sc = new Scanner(System.in);
public static void main(String[] args) {
boolean salir = false;
while (!salir) {
switch (menuPrincipal()) {
case vender:
break;
case recaudacion:
break;
case estadisticas:
break;
case resumen:
break;
case salir:
salir = true;
break;
case invalida:
System.out.println("Opción inválida, intentalo de nuevo");
break;
}
}
}
private static enum OpcionesMenu {
vender,
recaudacion,
estadisticas,
resumen,
salir,
invalida,
}
private static OpcionesMenu menuPrincipal() {
System.out.print(
"========== PARQUE DE ATRACCIONES ==========\n" +
"1. Vender entrada\n" +
"2. Consultar recaudación\n" +
"3. Consultar estadísticas\n" +
"4. Mostrar resumen del día\n" +
"5. Salir\n" +
"Elige una opción: "
);
int opt = leerEnteroPositivo();
return switch (opt) {
case 1 -> OpcionesMenu.vender;
case 2 -> OpcionesMenu.recaudacion;
case 3 -> OpcionesMenu.estadisticas;
case 4 -> OpcionesMenu.resumen;
case 5 -> OpcionesMenu.salir;
default -> OpcionesMenu.invalida;
};
}
private static int leerEnteroPositivo() {
int resultado = 0;
do {
try {
resultado = sc.nextInt();
} catch (Exception e) {
System.out.printf(
"Valor incorrecto, debe ser un número natural (%s)\n",
e
);
sc.next();
}
if (resultado < 0) System.out.println(
"Debe ser un numero positivo"
);
} while (resultado < 0);
return resultado;
}
}