Ejercicios Básicos Resueltos POO Java
Crea una clase llamada Libro que guarde la información de cada uno de los libros de una biblioteca. La clase debe guardar el título del libro, autor, número de ejemplares del libro y número de ejemplares prestados. La clase contendrá los siguientes métodos:
Constructor por defecto.
Constructor con parámetros.
Métodos Setters/getters
Método préstamo
que incremente el atributo correspondiente cada vez que se realice un préstamo
del libro. No se podrán prestar libros de los que no queden ejemplares
disponibles para prestar. Devuelve true si se ha podido realizar la operación y
false en caso contrario.
Método devolución
que decremente el atributo correspondiente cuando se produzca la devolución de
un libro. No se podrán devolver libros que no se hayan prestado. Devuelve true
si se ha podido realizar la operación y false en caso contrario.
Método toString
para mostrar los datos de los libros. Este método se heredada de Object y lo
debemos modificar (override) para adaptarlo a la clase Libro.
Escribe un programa para probar el funcionamiento de la clase
Libro.
public class Libro {
private String titulo;
private String autor;
private int ejemplares;
private int prestados;
//constructor por defecto
public Libro() {
}
//constructor con parámetros
public Libro(String titulo, String autor, int ejemplares, int prestados) {
this.titulo = titulo;
this.autor = autor;
this.ejemplares = ejemplares;
this.prestados = prestados;
}
//getters y setters
public String getAutor() {
return autor;
}
public void setAutor(String autor) {
this.autor = autor;
}
public int getEjemplares() {
return ejemplares;
}
public void setEjemplares(int ejemplares) {
this.ejemplares = ejemplares;
}
public int getPrestados() {
return prestados;
}
public void setPrestados(int prestados) {
this.prestados = prestados;
}
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
//método para realizar el prestamo de un libro
public boolean prestamo() {
if (prestados < ejemplares) {
prestados++;
return true;
}
return false;
}
//método para realizar la devolución de un libro
public boolean devolucion() {
if (prestados != 0) {
prestados--;
return true;
}
return false;
}
//método toString sobrescrito para mostrar los datos de la clase Libro
@Override
public String toString() {
return "titulo: " + titulo + "\nautor: " + autor +
"\nejemplares: " + ejemplares + "\nprestados: " + prestados;
}
}//Fin de la clase Libro
Un programa para probar la clase Libro puede ser este:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String titulo, autor;
int ejemplares;
//se crea el objeto libro1 utilizando el constructor con parámetros
Libro libro1 = new Libro("El quijote", "Cervantes", 1, 0);
//se crea el objeto libro2 utilizando el constructor por defecto
Libro libro2 = new Libro();
System.out.print("Introduce titulo: ");
titulo = sc.nextLine();
System.out.print("Introduce autor: ");
autor = sc.nextLine();
System.out.print("Numero de ejemplares: ");
ejemplares = sc.nextInt();
//se asigna a libro2 los datos pedidos por teclado.
//para ello se utilizan los métodos setters
libro2.setTitulo(titulo);
libro2.setAutor(autor);
libro2.setEjemplares(ejemplares);
//se muestran por pantalla los datos del objeto libro1
//se utilizan los métodos getters para acceder al valor de los atributos
System.out.println("Libro 1:");
System.out.println("Titulo: " + libro1.getTitulo());
System.out.println("Autor: " + libro1.getAutor());
System.out.println("Ejemplares: " + libro1.getEjemplares());
System.out.println("Prestados: " + libro1.getPrestados());
System.out.println();
//se realiza un préstamo de libro1. El método devuelve true si se ha podido
//realizar el préstamo y false en caso contrario
if (libro1.prestamo()) {
System.out.println("Se ha prestado el libro " + libro1.getTitulo());
} else {
System.out.println("No quedan ejemplares del libro " + libro1.getTitulo() + " para prestar");
}
//se realiza una devolución de libro1. El método devuelve true si se ha podido
//realizar la devolución y false en caso contrario
if (libro1.devolucion()) {
System.out.println("Se ha devuelto el libro " + libro1.getTitulo());
} else {
System.out.println("No hay ejemplares del libro " + libro1.getTitulo() + " prestados");
}
//se realiza otro préstamo de libro1
if (libro1.prestamo()) {
System.out.println("Se ha prestado el libro " + libro1.getTitulo());
} else {
System.out.println("No quedan ejemplares del libro " + libro1.getTitulo() + " para prestar");
}
//se realiza otro préstamo de libro1. En este caso no se podrá realizar ya que
//solo hay un ejemplar de este libro y ya está prestado. Se mostrará por
//pantalla el mensaje No quedan ejemplares del libro…
if (libro1.prestamo()) {
System.out.println("Se ha prestado el libro " + libro1.getTitulo());
} else {
System.out.println("No quedan ejemplares del libro " + libro1.getTitulo() + " para prestar");
}
//mostrar los datos del objeto libro1
System.out.println("Libro 1:");
System.out.println("Titulo: " + libro1.getTitulo());
System.out.println("Autor: " + libro1.getAutor());
System.out.println("Ejemplares: " + libro1.getEjemplares());
System.out.println("Prestados: " + libro1.getPrestados());
System.out.println();
//mostrar los datos del objeto libro2
System.out.println("Libro 2:");
System.out.println("Titulo: " + libro2.getTitulo());
System.out.println("Autor: " + libro2.getAutor());
System.out.println("Ejemplares: " + libro2.getEjemplares());
System.out.println("Prestados: " + libro2.getPrestados());
System.out.println();
}//Fin de la clase Fraccion
muy buen ejercicio, felicitaciones
ResponderEliminarGracias Unknown xD
Eliminarhola me podrias ayudar con este ejercicio?
EliminarPunto 4.
Se requiere un programa en Java que almacene 5 rectángulos en un arreglo y permita
calcular el promedio de las áreas y el promedio de los perímetros de los 5 rectángulos.
mi correo es jusebos73@gmail.com gracias
puedes mandar a imprimir System.out.println(lib1);
Eliminarpuedes mandar a imprimir System.out.println(lib1);
y con el metodo toSring definir el formato de cuando se mande a imprimir.
Saludos...!
hola
EliminarMuchas Gracias, por este tipo de ejercicios, la verdad resuelvo muchas dudas.
ResponderEliminarBuen Aporte, muchas gracias. también me gusto el blog
ResponderEliminarhttp://pokerjava.blogspot.pe/
muy bueno funciona ok , verdad gracias
ResponderEliminarno entiendo como vincular a los 2 clases ayudaaaaaa
ResponderEliminarbruno,no sé exactamente si ésta tu duda,pero intenta cambiar el``package´´ o el paquete para que coincidan.
EliminarDisculpa me podrias ayudar con esto?
EliminarBookCenter es una antigua librer´ıa que recien est ´ a comenzando a manejar la informaci ´ on de sus ´
libros y sus ventas de manera digital. La informacion de los libros se almacena en la lista ´ libros
cuyos elementos son tuplas que contienen: (id libro, autor, valor NETO libro, tipo):
libros = [("np01","Nicanor Parra", 15500,"poesia"),
("np02", "Nicanor Parra", 12500,"poesia"),
("gm01", "Gabriela Mistral", 15500,"poesia"),
("ggm01", "Gabriel Garcia Marquez", 14500,"novela"),
...]
Ademas existe la lista ´ titulos cuyos elementos son tuplas que asocian los t´ıtulos de los libros
con su identificador:
titulos = [("Poemas y antipoemas", "np01"),
("Ecopoemas", "np02"),
("Tala", "gm01"),
("Cien anios de soledad", "ggm01")
...]
Las ventas se registran en la siguiente lista:
ventas = [("vta-101",(2018,1,27), ["np01","gm01"]),
("vta-102",(2018,1,25),["gm01","ggm01"]),
("vta-104",(2018,1,26), ["np01","np02"]),
("vta-106",(2018,1,27), ["np01","np02"])
...]
cuyos elementos son tuplas que contienen: (id venta, fecha, lista libros vendidos). Lamentable-
mente el sistema NO fue desarrollado por los alumnos de IWI-131, as´ı que ocurrio un error de ´
sistema que no registro el monto total de la venta. Para solucionar esta situaci ´ on se les solicita ´
construir la funcion´ agregar ventas(libros, titulos, ventas) la que recibe las tres
listas descritas anteriormente, y retorna una nueva lista, cuyos elementos son tuplas que contienen:
(fecha, id venta, total venta con IVA, lista titulos libros). Los elementos de esta nueva lista deben
estar ordenados de forma ascedente segun la fecha, como se muestra en el ejemplo: ´
>>> ventas2 = agregar_ventas(libros, titulos, ventas)
>>> print ventas2
[((2018, 1, 25), ’vta-102’, 35700.0, [’Tala’, ’Cien anios de soledad’]),
((2018, 1, 26), ’vta-104’, 33320.0, [’Poemas y antipoemas’, ’Ecopoemas’]),
((2018, 1, 27), ’vta-101’, 36890.0, [’Poemas y antipoemas’, ’Tala’]),
((2018, 1, 27), ’vta-106’, 33320.0, [’Poemas y antipoemas’, ’Ecopoemas’])
...]
Nota: Recuerde que para obtener el precio con IVA se le debe agregar el 19 % al valor NETO.
te has confundido, te falta un parentesis en la linea 782
EliminarMi viejo gracias. Pero una pregunta: es necesario ingresar por teclados los datos del libro 2 si el stter te los pide?
ResponderEliminartodos resueltos. gracias :) , no tienes mas avanzados ?
ResponderEliminarHola me puedes ayudar con este ejercicio:
ResponderEliminarUna tienda de emparedados incluye jamón, pan y queso en ellos, bajo un precio básico, el cliente puede elegir su acompañante entre guisantes y bebidas. Si el cliente elige guisantes, el precio básico del emparedado se incrementa así: $5500 si el guisante es papás a la francesa, $5000 si el guisante es yuca frita y $4200 si el guisante es plátano frito. Si el cliente elije gaseosa, como bebida el valor del emparedado se incrementa un 15% con respecto al valor básico, y si pide malteada el emparedado aumenta un 20%.
Con POO.
ES URGENTE, GRACIAS.
No entiendo
ResponderEliminarcomo se unen los dos programas?
ResponderEliminarno entiendo
Desarrollar un programa en java que simule el préstamo,devolución y estado (prestado, no prestado) de una tienda de contenidos digitales (videos, audio, juegos, animaciones , otros)
ResponderEliminarayudame con este.
Hola. Una pregunta, es necesario crear el objeto libro2?
ResponderEliminarDebes realizar un programa bajo la filosofía Orientada a Objetos para una casa de cambio, donde te permita calcular los siguientes tipos de cambio:
ResponderEliminarNo tendrás el archivo SRC por fa
ResponderEliminarNo ejecuta
ResponderEliminarno me corre :C
ResponderEliminarme ayuda en este ejercicio en c#
ResponderEliminarCree una clase Libro que modele la información que se mantiene en una biblioteca sobre
cada libro: título, autor, ISBN (único para cada libro), páginas, edición, editorial. La clase
debe tener: propiedades, constructores. Además, se pide crear un pequeño sistema usando
listas para:
a. Insertar libros
b. Modificar libros
c. Listar libros
d. Borrar libros
1. Definir una clase Libro para manejar la información asociada a un libro. La información de interés para un libro es: el título, el autor y el precio. Los métodos de interés son:Un constructor para crear un objeto libro, con título y autor como parámetros. Imprimir en pantalla el título, los autores y el precio del libro.Métodos get y set para cada atributo de un libro. Se debe extender la clase Libro definiendo las siguientes clases: Libros de texto con un nuevo atributo que especifica el curso al cual está asociado el libro. Libros de texto de Politécnico Gran Colombiano: subclase de la clase anterior. Esta ○subclase tiene un atributo que especifica cuál facultad lo publicó. Novelas: pueden ser de diferente tipo, histórica, romántica, policíaca, realista, ciencia ficción o aventuras. Para cada una de las clases anteriores se debe definir su constructor y redefinir adecuadamente el método para visualizar del objeto
ResponderEliminar