Paola Magillo, Univestita' di Genova,
Corso di Programmazione II per SMID, a.a. 2006-2007.
ESERCITAZIONE
Partite dalla classe "rettangolo" in una delle versioni che
avete realizzato, purche' contenga:
- costruttore che prende i due argomenti lunghezza e larghezza
- funzione "print"
Scrivete una classe "istogramma".
Un istogramma e' una serie di rettangoli tutti con stessa
larghezza e diversa lunghezza.
La classe per l'istogramma avra':
- un array di rettangoli (dimensionato a un numero massimo
di rettangoli che questo istogramma puo' contenere)
- un intero che dice quanti rettangoli l'istogramma contiene
in questo momento
- una larghezza prefissata da dare a tutti i rettangoli
- un costruttore che prende come argomenti:
- n = numero di rettangoli massimo
- w = larghezza da dare a tutti i rettangoli
e costruisce un istogramma che:
- potra' contenere al massimo n rettangoli
- ha in questo momento zero rettangoli
- la larghezza prefissata per i rettangoli e' w
- una funzione addRectangle che prende come argomento
un numero l e aggiunge all'istogramma un rettangolo
largo la larghezza prefissata e lungo l
(nota: usa il costruttore della classe rettangolo).
- una funzione print che stampa tutti i rettangoli
contenuti in questo momento nell'istogramma
(nota: usa la funzione "print" dei rettangoli).
- [FACOLTATIVO]
una funzione removeRectangle elimina
l'ultimo rettangolo dall'istogramma
Scrivete nella classe "istogramma" un "main" che:
- crea un istogramma con un certo numero massimo di rettangoli
e una certa larghezza prefissata
- aggiunge all'istogramma alcuni rettangoli (in numero non
superiore al massimo)
- stampa l'istogramma
- [FACOLTATIVO]
elimina dall'istogramma un rettangolo
- stampa di nuovo l'istogramma