Exercicis d'herència

(*) elteuusuari correspon a la direcció de correu eltectrònic del centre, sense punts, fins a @itb.cat

Sumari

  1. Exercicis
    1. ThreeRectanglesOneLeftPiramid
      1. Output (sense colors)
      2. Versió 1
      3. Versió 2
    2. VehicleShop
      1. Output
    3. MovingMechanicalArmApp

Exercicis

ThreeRectanglesOneLeftPiramid

Volem fer un programa que dibuixi rectangles i piràmides (aliniades a l'esquerre) de colors a la consola.

Volem que dibuixi el següents rectanlges.

rectangle: color: RED, llargada: 4, amplada: 5
triangle: color: YELLOW, altura: 3
rectangle color: GREEN, llargada: 3, amplada: 5

Output (sense colors)

XXXXX
XXXXX
XXXXX
XXXXX

X
XX
XXX

XXXXX
XXXXX
XXXXX

Versió 1

classDiagram class LeftPiramidFigure LeftPiramidFigure : +String color LeftPiramidFigure : +int base LeftPiramidFigure : +paint () class RectangleFigure RectangleFigure : +String color RectangleFigure : +int width RectangleFigure : +int height RectangleFigure : +paint ()

Versió 2

classDiagram class Figure Figure : +String color Figure : prepareColor() Figure : clearColor() Figure <|-- LeftPiramidFigure LeftPiramidFigure : +int base LeftPiramidFigure : +paint () Figure <|-- RectangleFigure RectangleFigure : +int width RectangleFigure : +int height RectangleFigure : +paint ()

VehicleShop

L'empresa que feia bicicletes ara també ven patinets.
Tingues en compte que els patinets no tenen marxes. Per altre banda si que t'has de guardar la potencia que tenen.
Crea i modifica les classes que necessitis.

Fes un petit programa que crei una bicicleta i un patinet d'una única marca i les imprimeixi per pantalla (no s'ha de llegir res de l'usuari).

Output

BicycleModel{name='modelX', gears=5, brand=VehicleBrand{name='lorem', country='Togo'}}
ScooterModel{name='s562', power=45.3, brand=VehicleBrand{name='lorem', country='Togo'}}

MovingMechanicalArmApp

Volem afegir un nou tipus de braç mecànic que es pugui desplaçar per una cinta.
En concret, el braç mecànic mòbil es pot desplaçar un nombre real (double) de metres endavant i endarrere. Comença a la posició 0, no es pot desplaçar en una posició inferior a la 0.

Crea les classes que necessitis per a poder-ho representar. Hem de tenir en compte que volem poder seguir creant robots del tipus MechanicalArm (que no es puguin moure).

Fes un programa que apliqui al braç les següents instruccions: