Anteprima
Vedrai una selezione di 1 pagina su 3
Programmazione I - Esercizi Pag. 1
1 su 3
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Università di Napoli Federico II

Corso di Laurea in Ingegneria Informatica

Esami di Programmazione I

Prova pratica del 27/06/2006

Durata della prova: 2h

Cognome............................................Nome...............................................Matr.......................

Testo della Prova

Si realizzi in C++ la gerarchia di classi Titolare - Carta di Credito - Conto Corrente mostrata in figura. La classe

Titolare ha come attributi privati nome e cognome di un cliente, tali informazioni rappresentano dati comuni sia per un

conto corrente che per una carta di credito. La funzione membro della classe Titolare “StampaDati” visualizza sullo

schermo il nome ed il cognome del cliente. Analogamente la funzione membro “ StampaDati” della classe ContoCorrente

(rispettivamente, CartaCredito) visualizza sullo schermo tutti i dati relativi ad un conto corrente (rispettivamente, di una

carta di credito), e quindi il il numero identificativo del conto corrente (rispettivamente, il numero identificativo della

carta di credito), il valore del saldo (rispettivamente, il valore del debito, cioè l’importo che deve essere detratto dal conto

corrente del titolare della carta di credito) ed il nome e cognome del titolare. Devono essere inoltre implementate le

funzioni “getSaldo” e “getDebito” che ritornano rispettivamente il valore corrente degli attributi SaldoCorrente e

DebitoCorrente.

********** USARE LA CLASSE string.******************************************************

Il programma principale definisce tre oggetti di tipo CartaCredito e tre oggetti di tipo ContoCorrente, definisce poi due

vettori di tipo CartaCredito e ContoCorrente che vengono inizializzati con gli oggetti definiti in precedenza, e stampa i

dati di tali oggetti, come dal testo fornito. Inoltre crea ed inserisce in un oggetto ListaRossi di tipo Lista, ogni titolare il

cui SaldoCorrente sia inferiore al DebitoCorrente ed il valore dell’importo dello scoperto. Infine stampa la ListaRossi.

La classe Lista deve essere realizzata mediante una lista linkata. Ogni Nodo della lista è un record costituito da un

campo Titolare, da un campo Importo (che contiene il valore dello scoperto) e da un campo puntatore al prossimo Nptr.

Per la classe Lista devono essere implementato il costruttore, il distruttore e le funzioni InserisciNodo e StampaLista

come da diagramma delle classi in figura, esse devono essere utilizzate nel main per inserire in ListaRossi un titolare il

cui conto è in rosso, e il valore dello scoperto e per stampare la ListaRossi. InserisciNodo effettua una semplice

operazione di inserimento in testa (push).

Il programma deve essere eseguito utilizzando e completando il main di test fornito, in cui deve essere inserito il

codice che valuta quali dei titolari hanno il conto in rosso ed inserisce nella lista tali titolari e importo dello

scoperto. Si riporta l’output atteso a seguito dell’esecuzione del main. (Suggerimento: nei costruttori con zero argomenti

inizializzare le stringhe con la stringa vuota “”). Si strutturi il codice secondo le appropriate tecniche di programmazione

modulare presentate durante il corso e nel libro di testo.

Titolare Nodo

- Nome: string

- Cognome: string + Nptr: Nodo *

+ Importo: float

+StampaDati(): void Lista

ContoCorrente CartaCredito +InserisciNodo(const Titolare, float): void

-NumeroConto: string -NumeroCarta: string +StampaLista(): void //stampa a video

-SaldoCorrente: float -DebitoCorrente: float

+StampaDati():void +StampaDati():void

+getSaldo():float +getDebito():float

Dettagli
Publisher
A.A. 2005-2006
3 pagine
1 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher N. A. di informazioni apprese con la frequenza delle lezioni di Programmazione 1 e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Vittorini Valeria.