Ejercicios POO


Programación Java: Ejercicios Resueltos Programación Orientada a Objetos

Ejercicios Básicos de Programación Orientada a Objetos








Ejercicios Relación de Composición entre clases


Ejercicios Herencia entre clases


57 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Muy buenos ejercicios, me pareparo para mi primer parcial , gracias esta bueno el blog !!!

    ResponderEliminar
    Respuestas
    1. De momento no hay muchos ejercicios de POO pero en cuanto tenga un poco de tiempo publicaré más. Gracias pro el comenmtario y espero que sigas visitando el blog.

      Eliminar
    2. Si pudieses subir más de cadenas, POO y polimorfismo sería genial. Gracias por tu esfuerzo.

      Eliminar
  3. excelente!! pongan más eso siii ...sigan asiii!!!

    ResponderEliminar
  4. Gracias, me encantan este tipo de ejercicios para practicar POO, y no hay muchos tan buenos y bien explicados.

    ResponderEliminar
    Respuestas
    1. Gracias por el comentario Sara. Me alegro de que te gusten y sobre todo de que te sean útiles. Saludos ;)

      Eliminar
  5. Eres genial gracias por los ejercicios

    ResponderEliminar
    Respuestas
    1. Gracias Pepez, pronto subiré más ejercicios de programación orientada a objetos. Saludos

      Eliminar
  6. Cuánto ayudan estos ejercicios resueltos. Muchas gracias por compartirlos.

    ResponderEliminar
    Respuestas
    1. Gracias por el comentario Nargués. Me alegro de que te sean útiles. Saludos

      Eliminar
  7. Gracias por tener un lindo corazón y ser desprendid@ al compartir con esa entrega este tipo de información. Dios se lo pague. Bendiciones😊

    ResponderEliminar
  8. deberian modelar una hamburguesa, No lo puedo lograr :(

    ResponderEliminar
  9. hola por casualidad tu no tienes un ejercicio donde se utiliza la clase persona y sus atributos es que la profesora me indico que estaba en este blog es para el domingo fecha limite tu ejercicio es http://puntocomnoesunlenguaje.blogspot.com.es/2015/04/ejercicio-basico-poo-.java.html lo busco y no lo encuentro y directamente del link no me abre por favor te lo agradesco

    ResponderEliminar
    Respuestas
    1. Hola Erwin, el enlace no te funciona porque hay un punto antes de la palabra java. Pero en ese ejercicio no se utiliza la clase Persona. Quizás te refieras a este:
      http://puntocomnoesunlenguaje.blogspot.com.es/2015/10/ejemplo-de-relaciones-entre-clases-java-composicion.html
      De todas formas puedes utilizar el buscador del blog que aparece en la parte superior para buscar la clase Persona y verás todas las entradas donde aparece.
      Un saludo, espero que te sirva.

      Eliminar
  10. Unos ejercicios geniales! como todo el blog! Muchísimas gracias por tu trabajo

    ResponderEliminar
    Respuestas
    1. Gracias por el comentario, espero que te sean útiles!!

      Eliminar
  11. Hola disculpa porcasualidad tiene un ejercicio convierta de numeros decimales a numeros romanos como se lo hace por favor

    ResponderEliminar
    Respuestas
    1. Lo tienes aquí http://puntocomnoesunlenguaje.blogspot.com.es/2014/12/convertir-numeros-romanos-en-java.html

      Eliminar
  12. Agradezco mucho el esfuerzo y la calidad de los ejercicios, muy útiles, gracias.

    Saludos, Pablo (Arg)

    ResponderEliminar
  13. necesito capturar un vector y la entrada registrar en una base de dato

    ResponderEliminar
  14. Estoy comenzando en java, alguien me podría ayudar con este ejercicio: Realizar el un programa que desglose una cantidad de
    euros en billetes de 10 y 5 y monedas de 1 euro.
    En el código me da con decimales:
    blic class Ejercicio3 {
    public static void main(String[] args) {
    double b10,b5,m1,cantidad,aux;

    Scanner sc = new Scanner(System.in);
    System.out.print("Ingresa Billete:");
    cantidad = sc.nextDouble();

    b10 = cantidad/10;
    aux = cantidad%10;
    b5 = aux/5;
    m1 = aux%1;





    System.out.println("Billetes 10: " + ((b10)));
    System.out.println("Billetes 5: " +((b5)));
    System.out.println("Monedas 1: " +(m1));

    ResponderEliminar
  15. me podrian ayudar con este problema

    Realizar programa de excepciones en clases basado en POO (programación orientada a objetos), para controlar el
    manejo de errores en aplicaciones.

    Escriba un programa que declare una clase llamada Leerdatos. Esta clase debe tener como
    miembros públicos 4 funciones:
    static void LeerInt (int &);
    static void LeerString (char *);
    static void LeerDouble (double


    los dos son iguales

    ResponderEliminar
  16. alguien que me pueda ayudar por favor:
    1.-Escribir un programa que permita leer nombres de personas y calificaciones que se almacenara en 2 arreglos paralelos.
    el programa deberá ordenar los datos por orden alfabético y posteriormente buscar un nombre mostrándolo con su calificación.
    si el nombre no existe en el arreglo, mostrara un mensaje de error....

    2.- Leer una serie de datos reales y almacenarlos en un arreglo unidimensional llamado dato. el programa también debe calcular la media aritmética, la desviación estándar y la varianza de dichos datos.
    debe contener los metodos: leer, visualizar, promedio y clase main...

    plisss.....

    ResponderEliminar
  17. Ayudaaaa!!!!!!!!!!
    Desarrolle una funcion recursiva que permita leer una lista de productos con la siguiente estructura:

    Producto ID(int)
    Nombre Producto(String)
    Siguiente producto(Producto)

    ResponderEliminar
  18. necesito ayuda, en leguaje UML:
    Un sistema de ecuaciones lineales.

    ax + by = c

    dx + ey = f

    Se puede resolver con la formula





    si (ae - bd)<>0

    Elabore un programa que con los valores de a,b,c,d,e y f, calcule e imprima X y Y, debe verificar que el producto de a con e menos b con d sea diferente de cero.

    ResponderEliminar
  19. Buen dia necesito alguien que haga mis trabajos es para terminar la universidad
    no me voy a dedicar a esto de la programacion pero son condicionantes en la universidad

    pasen precios por programas les dejo mi correo ayudenme

    ResponderEliminar
  20. hola me podrias ayudar con un ejercicio que tengo por favor....
    Desarrolle un programa que muestre la cantidad de piezas armadas al final de una semana de producción x día, calculando el costo unitario y el costo final del o los productos terminados al final de la semana. Si la producción total de piezas sobrepasa las 1000 piezas entonces al costo final aumentarle un 15% de lo contrario aumentar 5%. Determinar cuantas piezas arman un producto. Presionar -1 para salir del programa.

    ResponderEliminar
    Respuestas
    1. El enunciado no esta del todo claro, como no pide ingresar por teclado las piezas por día, lo que hice fue generar un número aleatorio de piezas x días de semana, esta casi terminado. Si necesitas que te explique el código con gusto.


      public class Piezas {

      public static void main(String[] args) {
      // TODO Auto-generated method stub

      int produccion_dia, costo_unitario=5, final_semana=0;
      int acumulador_por_dia=1, precio_final;





      for(int semana = 7; acumulador_por_dia<= semana; acumulador_por_dia++) {


      //Genera un número aleatorio entre 1 y 240
      produccion_dia = (int)(Math.random()*240+1);

      final_semana = final_semana + produccion_dia;

      System.out.println("Producción día " + acumulador_por_dia + ": " + produccion_dia + " piezas armadas.");
      }
      System.out.println("\nTotal producción de la semana: " + final_semana + " piezas");




      System.out.println("\nTotal producción de la semana: " + final_semana + " piezas * costo unitario pieza " + costo_unitario + " = " + (final_semana*5));

      precio_final = final_semana;





      if(precio_final > 1000) {
      System.out.println("\nTotal de piezas sobrepasa: 1000 piezas, aplicando 15%: Total" +( precio_final + (precio_final*0.15)));
      }else if(final_semana <= 1000) {
      System.out.println("Producción total menor a 1000 piezas, aplicando 5%: = Total " +( precio_final + (precio_final*0.05)));

      }

      }

      }

      Eliminar
  21. hola que tal, no se como hacer un menu de operaciones basicas en java que contenga una secuencia condicional un bucle y un switch AYUDAAAAA

    ResponderEliminar
  22. hola alguien me podria ayudar con esto:
    Hacer un programa java que pida la temperatura del clima y dependiendo de eso me diga si esta ideal para: salir, ir a la playa, quedarme en casa, o ponerme abrigo.

    ResponderEliminar
  23. Crea las clases Gato, Perro, Canario, Lagarto y Pingüino con al menos, tres métodos específicos para cada clase. Prueba las clases creadas en un programa Java en el que se instancien objetos y se les apliquen métodos. ayudita por aqui?

    ResponderEliminar
  24. Realizar un programa que nos permita la sobrecarga de Constructores, si se hace una llamada desde un
    constructor sin datos que nos muestre por pantalla un saludo, si se se envían dos enteros, debe realizar la
    suma

    ResponderEliminar
  25. Capturar un valor entero desde el teclado y mostrar la sumatoria de todos los números enteros que hay entre 0 y el número indicado

    ResponderEliminar
    Respuestas
    1. package solucionesejerciciosinternet;

      import java.util.Scanner;

      public class SolucionesEjerciciosInternet {

      public static void main(String[] args) {
      // TODO code application logic here
      int a ;
      Scanner sc = new Scanner(System.in);

      System.out.println("--Ingrese un numero-- : ");
      a = sc.nextInt();

      //Con la siguiente variable haremos la suma iterativa
      int suma =0;
      for (int i = 0; i <= a; i++) {
      suma +=i;
      }


      System.out.println("La suma de los valores de 0 hasta "+a+" es : "+suma);

      }

      }

      Eliminar
  26. Hola Alguien me puede ayudar con este ejercicio

    Implementar listas simplemente enlazadas circular como primer proyecto lo siguiente:
    1. Clases llamada jugador: con los atributos nombre_jugador, numero_dorsal, posición; un método tostrimg(); emplee un constructor con argumentos.
    2. Clase llamada nodo_jugador: con sus atributos dato de tipo jugador y siguiente de tipo nodo_jugador y su constructor con argumentos,
    3. Clase llamada lista_nomina con sus atributos: inicio, su constructor con argumentos; adicione los métodos: ingresar al final de la lista los nuevos nodos; eliminar que busca en la lista un jugador y su nodo es desconectado de la lista; mostrar que muestra la información de todos los nodos; eliminar que borra toda la lista; expulsado

    4. Clase llamada lista_titular con sus atributos: inicio y cantidad (servirá sólo para controlar que no se excedan la cantidad de nodos.); adicione los métodos cambio que busca en la lista un jugador y su nodo es desconectado de la lista y reemplazado por un nuevo nodo que tiene los datos de un nuevo jugador; mostrar que muestra la información de todos los nodos; eliminar que borra toda la lista; expulsado busca en la lista un jugador y su nodo es desconectado de la lista y disminuye el valor del atributo cantidad en 1.
    Implementar listas doblemente enlazadas circular como primer proyecto lo siguiente:
    1. Clases llamada jugador: con los atributos nombre_jugador, numero_dorsal, posición; un método tostring(); emplee un constructor con argumentos.
    2. Clase llamada nodo_jugador: con sus atributos dato de tipo jugador; anterior de tipo nodo_jugador; siguiente de tipo nodo_jugador y su constructor con argumentos,
    3. Clase llamada lista_nomina con sus atributos: inicio, su constructor con argumentos; adicione los métodos: ingresar al final de la lista los nuevos nodos; eliminar que busca en la lista un jugador y su nodo es desconectado de la lista; mostrar que muestra la información de todos los nodos; eliminar que borra toda la lista; expulsado

    4. Clase llamada lista_titular con sus atributos: inicio y cantidad (servirá sólo para controlar que no se excedan la cantidad de nodos.); adicione los métodos cambio que busca en la lista un jugador y su nodo es desconectado de la lista y reemplazado por un nuevo nodo que tiene los datos de un nuevo jugador; mostrar que muestra la información de todos los nodos; eliminar que borra toda la lista; expulsado busca en la lista un jugador y su nodo es desconectado de la lista y disminuye el valor del atributo cantidad en 1.

    ResponderEliminar
  27. hola me podrian ayudar con este ejercicio:


    Una empresa del sector tecnológico desea tener un sistema de información para administrar toda la información de su personal. Se conoce la siguiente información de cada empleado: número de identificación, nombres, apellidos, fecha de ingreso, sueldo básico mensual, porcentaje promedio de cumplimiento en los proyectos que participa y número de proyectos en los que participa. Desde el punto de vista de la contratación, se tienen empleados con contrato a término fijo, con contrato indefinido y por prestación de servicios. Para determinar el sueldo mensual de cada empleado, se tiene en cuenta:

    Si el contrato es a término indefinido y el porcentaje de cumplimiento en proyectos es superior al 90%, se incrementará el 10% al sueldo básico mensual.
    Si el contrato es a término fijo y el porcentaje de cumplimiento en proyectos es superior al 90%, se incrementará el 8 % al sueldo básico mensual.
    Si el contrato es por prestación de servicios y le porcentaje de cumplimiento en proyectos es superior al 90%, se incrementará el 2% por cada proyecto en el que participe.

    ResponderEliminar
  28. Hola, me pueden ayudar con este ejercicio, por favor :
    Se desea construir una aplicación de consola que permita el ingreso
    del costo de una computadora y un accesorio adicional. La computadora
    se puede adquirir al contado o al crédito.
    Si es al contado se hace un descuento del 6% del costo de la computadora
    (no incluye los costos de los accesorios de la computadora)
    y si es al crédito se aplicará un incremento de 5% si se paga a 6 cuotas, 6%
    de incremento si se paga en 12 cuotas y 7% de incremento si se paga a
    18 cuotas. El incremento se aplica al costo de la computadora y al costo del
    accesorio. Los accesorios de la computadora que puede elegir son: Impresora
    a 240 soles, estabilizador a 80 soles o escáner a 150 soles.






    ResponderEliminar
  29. que sea con clase de proforma y el nombre de paquete Tarea(con clase java y principal):
    1.Se desea construir una aplicación de consola que permita el ingreso
    del costo de una computadora y un accesorio adicional. La computadora
    se puede adquirir al contado o al crédito.
    Si es al contado se hace un descuento del 6% del costo de la computadora
    (no incluye los costos de los accesorios de la computadora)
    y si es al crédito se aplicará un incremento de 5% si se paga a 6 cuotas, 6%
    de incremento si se paga en 12 cuotas y 7% de incremento si se paga a
    18 cuotas. El incremento se aplica al costo de la computadora y al costo del
    accesorio. Los accesorios de la computadora que puede elegir son: Impresora
    a 240 soles, estabilizador a 80 soles o escáner a 150 soles.






    ResponderEliminar
  30. Me podrían ayudar por favor
    Realizar un programa que nos permita concatenar varias cadenas de texto y además utilizar (consultar) los
    métodos que nos permitan cambiar entre mayúsculas y minúsculas.

    Realizar un programa que nos permita la sobrecarga de Constructores, si se hace una llamada desde un
    constructor sin datos que nos muestre por pantalla un saludo, si se se envían dos enteros, debe realizar la
    suma.

    Crear una clase para el objeto carro, con tres métodos: chequeo, avanzar, apagar. Y desde la clase java
    principal , crear un objeto carro, y llamar a sus métodos para interactuar con el objeto.

    ResponderEliminar
    Respuestas
    1. Si ya vio eso en la clase y no sabe como solucionarlo, pida ayuda en lo que no sabe, pero no pida que le realicen todos los trabajos, trate de hacerlo y si encuentra un obstáculo, pregunta a Google, y si de verdad después de ver no encuentra, pide ayuda acá.

      Eliminar
  31. Me podrían ayudar con este programa
    Diseñar una aplicación donde se realizará un examen con 2 preguntas, en la
    parte norte se desplegará el avance del cuestionario por medio de una barra
    de progreso, en el centro se desplegará la pregunta y sus múltiples opciones
    (al menos 3), con un botón se navegará a la siguiente pregunta, al responder
    la última pregunta sin un botón que accione el evento se deberá mostrar el
    resultado en aciertos del examen.

    ResponderEliminar
    Respuestas
    1. ¿Usted quiere que le hagan la aplicación o que el resuelvan alguna duda? Porque entonces no ha aprendido nada y la programación no es lo suyo.

      Eliminar
  32. alguien me puede ayudar por favor 1. Partiendo del código que se adjunta, añadir un método accesor en la clase CuentaBancaria para poner el número de cuenta. Crear una referencia del tipo CuentaBancaria para realizar un depósito por 100 y un retiro por 25 para la cuenta 671238.
    public class CuentaBancaria {
    private long numero;
    private long balance;
    private Accion ultimaAcc;
    public class Accion {
    private String operacion;
    private long cantidad;
    Accion(String operacion, long cantidad) {
    this.operacion = operacion;
    this.cantidad = cantidad;
    }
    public String toString()
    { return numero + ": " + operacion + " " + cantidad; }
    }
    public void deposito(long cantidad) {
    balance += cantidad;
    ultimaAcc = new Accion("deposito", cantidad);
    }
    public void retiro(long cantidad) {
    balance -= cantidad;
    ultimaAcc = new Accion("retiro", cantidad);
    }
    // ...
    }

    ResponderEliminar
  33. PORFAVOR AYUDENME ::::::::Crea un Diagrama de Clase y la Implementación en el lenguaje Java de una Cuenta
    (bancaria) con atributos para el número de cuenta (un entero largo), la Cedula del
    cliente, el saldo actual y el interés anual que se aplica a la cuenta (porcentaje). Define
    en la clase los siguientes métodos:
     Constructor por defecto y constructor con DNI, saldo e interés.
     Métodos SET y GET. Para el número de cuenta no habrá métodos.
     actualizarSaldo(): actualizará el saldo de la cuenta aplicándole el interés
    diario (interés anual dividido entre 365 aplicado al saldo actual).
    ingresar(double): permitirá ingresar una cantidad en la cuenta.
     retirar(double): permitirá sacar una cantidad de la cuenta (si hay saldo).
     Método que nos permita mostrar todos los datos de la cuenta.
    El número de cuenta se asignará de forma correlativa a partir de 100001, asignando
    el siguiente número al último asignado.

    ResponderEliminar
  34. hola como puedo hacer en interfaz grafica

    Desarrollar programa que Simule la Presentación y Revision de un Exáamen utilizando lo que hasta el momento hemos visto en clase. Contiene todo lo que conlleva un Exáamen por escrito, como es: Nombre de la Materia, Nombre del Profesor, Unidad de la Materia sobre la que se presenta el Exámen, Fecha, todo lo anterior son Etiquetas. Nombre del Alumno que es campo Texto, Preguntas de Opción Múltiple, Un boton de Revision y un Campo Texto al final donde se presentará el resultado. En la sección de abajo (Material de Referencia) se encuentran un ejemplo de como debe sería exactamente el Resultado del Programas Solicitado

    ResponderEliminar
  35. Necesito Ayuda por favor :(
    Necesito codificar en java atributos y métodos
    Genero
    Nombre
    Apellido
    Grado de estudios
    Promedio
    Carrera
    Número de control
    Número de registro de proyectos
    Calcular carga académica
    Cálcular distinción de alumno

    ResponderEliminar
  36. Escribir un programa para:

    1.- Almacenar en arreglos paralelos los nombres, dni, fecha de nacimiento, grado de educación de un grupo de 20 personas que se ingresan por teclado.

    2.- Realizar una consulta en base al dni o al nombre para saber si los datos de la persona consultada se encuentran en los arreglos.

    3.- Listar los datos de las personas cuyo nombre se inicie con una letra que se ingresa por teclado.

    4.- Mostrar todos los datos del arreglo.

    ResponderEliminar
  37. - Crea una clase Cuenta(bancaria) con atributos para el número de cuenta (un entero), el CI del cliente (otro entero), nombre del cliente, el saldo actual. Define en la clase los siguientes métodos:

    ¨ Constructor por defecto y constructor con CI, nombre y saldo

    ¨ depositar(double): permitirá ingresar una cantidad en la cuenta.

    ¨ retirar(double): permitirá sacar una cantidad de la cuenta (si hay saldo).

    ¨ Método que nos permita mostrar todos los datos de la cuenta.

    ResponderEliminar
  38. GENTE ME PUEDEN AYUDAR????? Necesito resolver este ejercicio:::: AlmacenPago esta lanzando un nuevo servicio de inversión, donde el porcentaje anual de inversión se calcula mes a mes sin necesidad de sacar el dinero. Por lo tanto si el rendimiento es de 12% anual, y decido invertir $10000, en un mes tendría $10100 (+1%) y en dos meses $10201 (+1% del mes anterior)

    AlmacenPago te pide a ti armar un módulo para informar al usuario como crece su dinero en el tiempo. Este módulo debe contar con dos métodos


    Método 1
    Este método se encargará de calcular la inversión y mostrar para cada uno de los siguientes años, el saldo al finalizar el mismo. Para ello se tienen los siguientes datos

    Monto a invertir
    Interés anual
    Cantidad de años máximo

    ResponderEliminar
  39. Realizar un ejercicio que permita el ingreso de una frase por ventana, elimine los espacios ymuestre sin ellos la misma frase. Además de el total de caracteres con espacios y sin espacios.


    me pueden ayudar porfavor

    ResponderEliminar