Esercizi e progetti di programmazione - Apogeo
Esercizi e progetti di programmazione - Apogeo
Esercizi e progetti di programmazione - Apogeo
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
E–60 ESERCIZI E PROGETTI DI PROGRAMMAZIONE<br />
Figura 7<br />
Animazione grafi ca<br />
Progetti <strong>di</strong> <strong>programmazione</strong><br />
Progetto P13.1. Scrivete un programma per gestire un’agenda <strong>di</strong> appuntamenti. Create una<br />
classe Appointment che memorizzi una descrizione dell’appuntamento, il giorno dell’appuntamento,<br />
l’ora <strong>di</strong> inizio e l’ora <strong>di</strong> fi ne. Il programma deve conservare gli appuntamenti in un vettore<br />
or<strong>di</strong>nato. Gli utenti possono aggiungere appuntamenti e visualizzare tutti gli appuntamenti <strong>di</strong><br />
un determinato giorno. Quando viene aggiunto un nuovo appuntamento, utilizzate una ricerca<br />
binaria per stabilire in quale posizione del vettore va inserito: non aggiungetelo se è in confl itto<br />
con altri appuntamenti.<br />
Progetto P13.2. Realizzate una animazione grafi ca degli algoritmi <strong>di</strong> or<strong>di</strong>namento e <strong>di</strong> ricerca.<br />
Costruite un array e inseritevi numeri casuali compresi tra 1 e 100, poi <strong>di</strong>segnate ciascun elemento<br />
dell’array sotto forma <strong>di</strong> barretta verticale, come nella Figura 7. Ogni volta che l’algoritmo<br />
mo<strong>di</strong>fi ca l’array, mostrate una fi nestra <strong>di</strong> <strong>di</strong>alogo e attendete che l’utente prema il pulsante “Step”,<br />
poi invocate il metodo repaint. Premendo il pulsante “Run” si fa procedere l’animazione, fi no<br />
al termine oppure fi no a quando l’utente preme il pulsante “Step”.<br />
Realizzate le animazioni dell’or<strong>di</strong>namento per selezione, dell’or<strong>di</strong>namento per fusione e della<br />
ricerca binaria. Nell’animazione della ricerca binaria evidenziate l’elemento in fase <strong>di</strong> ispezione e<br />
i valori <strong>di</strong> from e to.<br />
Capitolo 14<br />
<strong>Esercizi</strong> <strong>di</strong> <strong>programmazione</strong><br />
** <strong>Esercizi</strong>o P14.1. Utilizzando soltanto l’interfaccia pubblica della classe lista concatenata, scrivete<br />
un metodo<br />
public static void downsize(LinkedList staff)<br />
che elimini un impiegato sì e uno no da una lista concatenata.<br />
** <strong>Esercizi</strong>o P14.2. Utilizzando soltanto l’interfaccia pubblica della classe lista concatenata, scrivete<br />
un metodo<br />
Cay Horstmann: Concetti <strong>di</strong> informatica e fondamenti <strong>di</strong> Java 5 a ed. - Copyright 2010 <strong>Apogeo</strong> srl