Java
Ejercicios
Ejercicios
  • 02-Estructuras de control y bucles
    • Ejercicios de estructuras de control
    • Ejercicios de estructuras de control II
  • 06-Patrones de diseño
    • Ejercicio MVC en JAVA
  • 08-Flujos y Ficheros
    • Ejercicio de Redirección y Comunicación entre Procesos en Java
    • Ejercicio de Comunicación y Sincronización entre Tres Procesos en Java
  • 08-Flujos y Ficheros
  • 10-Swing
    • Ejercicio Aplicación de Notas Simples
    • Ejercicio Cálculadora básica
    • Ejercicio: Aplicación de Lista de Tareas con layouts
    • Ejercicio: Dibujo de figuras con Graphics
    • Ejercicio: Aplicación de Control de Color de un Rectángulo
    • Ejercicio: Dibujo de una clase vista
  • 03-Arrays y colecciones
    • 03.01-Arrays
      • Sistema de Gestión de Cine
      • Ejercicios básicos de arrays
    • 03.02-Colecciones
      • Sistema de Gestión de Canales de YouTube
  • 05-POO
    • 05.1-POO Iniciación
      • Ejercicio: Sistema de Gestión para una Biblioteca
      • Ejercicio de arrays. Aventura de los Patapons
      • Ejercicios básicos sobre POO
    • 05.2-POO Clases Abstractas
      • Sistema de Gestión de Vehículos
    • 05.6-Generales de POO
      • Ejercicio: Sistema de Gestión de Empleados
      • Aventuras en el Laberinto Encantado
      • Ejercicio de Pasapalabra
  • Soluciones
    • 02-Estructuras de control y bucles
      • [Solución] Ejercicios de estructuras de control II
    • 06-Patrones de diseño
      • [Solucion] Ejercicio MVC en JAVA
    • 08-Flujos y Ficheros
      • Solución de Ejercicio de Redirección y Comunicación entre Procesos en Java
      • Solución de Ejercicio de Comunicación y Sincronización entre Tres Procesos en Java
    • 10-Swing
      • [Solución] Ejercicio Aplicación de Notas Simples
      • [Solución] Ejercicio Cálculadora Simple
      • [Solución] Ejercicio: Aplicación de Lista de Tareas con layouts
      • [Solución] Ejercicio: Dibujo de figuras con Graphics
      • [Solución] Ejercicio: Dibujo de figuras con Graphics
      • [Solución] Ejercicio: Aplicación de Control de Color de un Rectángulo
    • 03-Arrays y colecciones
      • 03.01-Arrays
        • [Solución] Ejercicios de estructuras de control 2
        • [Solución] Sistema de Gestión de Cine
        • [Solución] Ejercicios básicos de arrays
      • 03.02-Colecciones
        • [Solución] Sistema de Gestión de Canales de YouTube
    • 05-POO
      • 05.1-POO Iniciación
        • [Solución] Ejercicio de arrays. Aventura de los Patapons
        • [Solución] Ejercicios básicos sobre POO
      • 05.2-POO Clases Abstractas
        • [Solución] Sistema de Gestión de Vehículos
      • 05.6-Generales de POO
        • Solución de Sistema de Gestión de Empleados
        • [Solución] Aventuras en el Laberinto Encantado
        • [Solución] Ejercicio de Pasapalabra
Powered by GitBook
On this page
  1. Soluciones
  2. 05-POO
  3. 05.1-POO Iniciación

[Solución] Ejercicio de arrays. Aventura de los Patapons

Espero que hayas conseguido resolver el ejercicio por tí mism@ pero si no, no te preocupes, vamos a repasar el resultado para que puedas entender que elementos eran necesarios y por qué.

Para resolver este ejercicio, crearé un programa en Java que simula un nivel básico del videojuego Patapon. Este programa utilizará arrays para gestionar tanto el ejército de Patapons como los enemigos, y todo el código estará contenido en una única clase Main. La simulación incluirá interacciones básicas como organizar el ejército de Patapons, avanzar por el campo de batalla, y enfrentarse a enemigos.

import java.util.Scanner;

public class AventuraPatapon {

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

        // Definir arreglos para representar el ejército de Patapons y los enemigos
        String[] ejercitoPatapon = {"Atacante", "Defensor", "Soporte", "Atacante"};
        String[] enemigos = {"Ogro", "Troll", "Ogro", "Troll"};

        int indicePatapon = 0; // Índice para controlar la posición actual del ejército de Patapons
        int indiceEnemigo = 0; // Índice para controlar la posición actual de los enemigos

        System.out.println("Inicio de la Aventura de los Patapons");

        // Mientras haya enemigos y Patapons, el juego continúa
        while (indiceEnemigo < enemigos.length && indicePatapon < ejercitoPatapon.length) {
            System.out.println("Encuentras un " + enemigos[indiceEnemigo] + " en el camino.");

            // Decisión del jugador
            System.out.println("¿Deseas atacar (1) o defender (2)?");
            int eleccion = scanner.nextInt();

            // Simulación de combate
            if (eleccion == 1) { // Atacar
                System.out.println("Tu " + ejercitoPatapon[indicePatapon] + " atacó al " + enemigos[indiceEnemigo]);
                indiceEnemigo++; // El enemigo es derrotado
            } else if (eleccion == 2) { // Defender
                System.out.println("Tu " + ejercitoPatapon[indicePatapon] + " defendió el ataque.");
            }

            indicePatapon++; // Avanzar al siguiente Patapon en el ejército

            // Verificar si quedan Patapons o enemigos
            if (indicePatapon >= ejercitoPatapon.length) {
                System.out.println("Todos tus Patapons han sido utilizados.");
            }

            if (indiceEnemigo >= enemigos.length) {
                System.out.println("Todos los enemigos han sido derrotados. ¡Has ganado!");
                break;
            }
        }

        // Resultado final
        if (indicePatapon < ejercitoPatapon.length) {
            System.out.println("Aún tienes Patapons, pero todos los enemigos han sido derrotados. ¡Victoria!");
        } else if (indiceEnemigo < enemigos.length) {
            System.out.println("Te has quedado sin Patapons. Juego terminado.");
        }

        scanner.close();
    }
}
Previous05.1-POO IniciaciónNext[Solución] Ejercicios básicos sobre POO

Last updated 1 year ago