0% encontró este documento útil (0 votos)
60 vistas4 páginas

Problemas de Programacion - POO Basica

Este documento presenta varias clases que podrían implementarse en Java para modelar conceptos del mundo real como coches, puntos, cafeteras, horas, rectángulos, operaciones aritméticas, personas, monstruos y libros. Propone atributos y métodos para cada clase, así como ejemplos de cómo crear objetos y usar los métodos.

Cargado por

Giovanni Barba
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
60 vistas4 páginas

Problemas de Programacion - POO Basica

Este documento presenta varias clases que podrían implementarse en Java para modelar conceptos del mundo real como coches, puntos, cafeteras, horas, rectángulos, operaciones aritméticas, personas, monstruos y libros. Propone atributos y métodos para cada clase, así como ejemplos de cómo crear objetos y usar los métodos.

Cargado por

Giovanni Barba
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

Programación Orientada a Objetos Básica

47.- Se desea implementar en JAVA la clase Coche. Cada coche debe tener un color,
una anchura, una altura, un numero de puertas y un numero de ruedas.

a) Programa la clase coche usando un constructor con parámetros. Ten en cuenta


que todo coche tiene 4 ruedas siempre.
b) Implementa el método arrancar() para arrancar el coche. Un coche sólo puede
arrancarse si está parado/apagado. El método mostrará por pantalla si consigue
arrancar el coche o no.
c) Implementa el método parar() para parar/apagar el coche. Un coche sólo puede
pararse si está arrancado. El método mostrará por pantalla si consigue parar el
coche o no.
d) Implementa el método desplazarse() para hacer que el coche se mueva. Un
coche sólo puede moverse si está arrancado. El método mostrará por pantalla si
consigue desplazarse con el coche o no.
e) Añade el atributo de clase gasolina (tipo entero), el cual indicará la cantidad de
gasolina que posee el coche en cada momento (valores entre 0 y 50).
f) Haz que el método arrancar consuma 5 unidades de gasolina y el método
desplazarse, 20 unidades.
g) Crea el método echar gasolina, el cual añadirá tantas unidades de gasolina como
indique su argumento. Recuerda que para echar gasolina debes apagar el coche.
h) Crea el método chequear() el cual devolverá un valor booleano. Verdadero si el
coche tiene gasolina y falso en caso contrario. Además, el coche sólo podrá
arrancar si este método devuelve true.
i) Crea la el método pintar() el cual “pintará” el coche con el color que se le pase
como parámetro.
j) Implementa el método toString() para la clase coche.

48.- Crear la clase Punto, la cual tendrá dos atributos: X e Y. También son necesarios
los siguientes métodos:

• moverHorizontal: recibe un numero entero con signo y desplaza


horizontalmente el punto con ese valor.
• moverVertical: igual que el anterior pero verticalmente.
• mostrar: muestra el punto de la siguiente forma: Punto (X,Y)

CFGS Desarrollo de Aplicaciones Web / CFGS Desarrollo de Aplicaciones Multiplataforma


9
49.- Crea la clase Cafetera con los atributos capacidadMaxima y cantidadActual.
También se necesitan los siguientes métodos:

• El constructor debe indicar la capacidad máxima en 1000 cc y la capacidad


actual en 0 (cafetera vacía).
• echarCafe: recibe una cantidad de café y lo anota en la capacidad actual. Hay
que controlar que la cantidad recibida no sea mayor que la capacidad máxima (si
es así, la cafetera se llena completamente y se desecha el sobrante)
• llenarCafetera: pone la cafetera a su valor máximo de cantidad.
• VaciarCafetera: tira todo el café de la cafetera.
• servirTaza: recibe un numero que indica la capacidad de la taza y hace que la
cafetera pierda esa cantidad de café. Hay que controlar si la cafetera puede servir
la taza.
• cantidadCafe: muestra cuanto café queda en la cafetera: Queda xxxxxxx cc de
café en la cafetera.

50.- Crear una clase llamada Hora, con los atributos horas, minutos y segundos. Dicha
clase podrá ser construida indicando los tres atributos, solo las horas y los minutos o
sólo las horas. La clase tendrá los métodos necesarios para modificar la hora en
cualquier momento de forma manual y para mostrar la hora que tiene en un momento
dado. Hay que mantener los atributos con valores correctos en todo momento.

51.- Crea la clase Rectángulo, la cual almacenará la base y la altura. Estos atributos
serán privados y no deben poder accederse desde el exterior. Además, la clase tendrá los
métodos necesarios para calcular el área (base * altura), el perímetro (2*(b+h)) del
rectángulo y un método para representar en texto la clase:

-----------------------------------------
Rectángulo con base X y altura Y
Área: A
Perímetro: P
-----------------------------------------

52.- Crea una clase Aritmética, la cual tendrá dos valores numéricos decimales como
propiedades de clase y los métodos necesarios para calcular (que no mostrar), la suma,
resta, multiplicación, división y potencia de esos valores.

CFGS Desarrollo de Aplicaciones Web / CFGS Desarrollo de Aplicaciones Multiplataforma


10
53.- Crea la clase Persona con los siguientes datos: Una persona debe tener nombre
(cadena), edad (entero mayor a 0), sexo (‘M’ o ‘F’) y país (España, Bulgaria, Colombia
o Venezuela).
Además tendrá dos métodos:
• saludar: el cual debe devolver (que no mostrar) un saludo de la forma:
“Hola! Me llamo nombre y soy de pais”
• mostrarDatos: muestra de forma ordenada los datos de la persona.
• EsMayorEdad(): devuelve un booleano que indica si la persona es mayor de
edad o no.
• toString(): método para mostrar la información de una persona.
b) Mejora el método saludar para que reciba un número entero entre 1 y 3 como
parámetro. Dicho número indica el saludo que se debe realizar. Es decir, ahora el
método tendrá tres saludos distintos y el parámetro de entrada decidirá cual devuelve.

54.- Queremos crear un juego en el que vamos a tener unas criaturas llamadas
“Monstros”. Para ello hay que crear una clase que represente estas criaturas.
De cada Monstro necesitamos guardar su nombre, sus puntos de esfuerzo, sus vidas
totales, sus puntos de hambre y su estado (vivo o muerto). Además, cada Monstro puede
comer, comunicarse, jugar y dormir.
De momento, las reglas que rigen el juego son:

• El constructor sólo necesita el nombre del Llorón.


• Un Monstro empieza con 10 puntos de esfuerzo, 3 puntos de hambre, 7 vidas y,
obviamente, VIVO.
• Los valores de esfuerzo, hambre y vidas no pueden superar los valores iniciales.
• Al jugar gasta 3 puntos de esfuerzo y 1 de hambre.
• Al comunicarse gasta 1 punto de esfuerzo.
• Si come, gasta dos puntos de esfuerzo y gana dos de hambre. Pero si además
come su comida favorita, ganará 3 puntos de hambre.
• Al dormir gana 5 puntos de esfuerzo.
• Si los puntos de esfuerzo o de hambre llegan a cero, el Monstro perderá una vida
y volverá a vivir con los valores por defecto.
• Si el Monstro pierde todas las vidas, muere, todos sus atributos tomarán el valor
-1 y no podrá realizar ninguna acción .

CFGS Desarrollo de Aplicaciones Web / CFGS Desarrollo de Aplicaciones Multiplataforma


11
55.- Crear una clase Libro que contenga los siguientes atributos: ISBN, Titulo, Autor,
Número de páginas (todos obligatorios y privados).
Crear sus respectivos métodos get y set correspondientes para cada atributo. Crear el
método toString() para mostrar la información relativa al libro con el siguiente
formato: “El libro TITULO con ISBN creado por AUTOR tiene NPAGINAS”
Para probar la clase, crear 2 objetos Libro (los valores que se quieran) y mostrarlos por
pantalla. Por último, indicar cuál de los 2 tiene más páginas.

56.- Crea una clase llamada Cuenta que tendrá los siguientes atributos privados: titular
y cantidad. Al crear la clase, el titular será obligatorio pero la cantidad puede ser
opcional.
Ademas de los métodos getters y setters, la clase tendrá los siguientes:
• ingresar: se ingresa una cantidad a la cuenta, si la cantidad introducida es
negativa, no se hará nada.
• retirar: se retira una cantidad a la cuenta, si restando la cantidad actual a la
que nos pasan es negativa, la cantidad de la cuenta pasa a ser 0.
• toString: muestra una cadena con los datos de la cuenta: Esta cuenta
pertenece a xxxxx y posee actualmente una cantidad de yyyy €.

CFGS Desarrollo de Aplicaciones Web / CFGS Desarrollo de Aplicaciones Multiplataforma


12

También podría gustarte