Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Jan 17th, 2013  |  syntax: None  |  size: 1.89 KB  |  views: 18  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Università di Napoli Federico II
  2. Corso di Laurea in Ingegneria Informatica
  3.  
  4.  - Esame di Programmazione 1- 9 CFU
  5. Prova pratica del 4 giugno 2012
  6. Durata della prova: 2h
  7.  
  8.  
  9. Cognome ......................................... Nome .................................. Matr. .............................
  10.  
  11.  
  12. Testo della prova
  13. Si realizzi in C++ una gerarchia Manoscritto, Lettera. la classe Manoscritto è rappresenta un documento in formato elettronico, e può essere specializzato in una lettera. La classe Manoscritto contiene le seguenti variabili membro:
  14. -       Codice, identificativo numerico (intero)
  15. -       Autore (stringa allocata dinamicamente)
  16. -       numpag, numero intero, numero di pagine
  17. -       Formato, stringa allocata dinamicamente, formato del file
  18.  
  19. La classe Lettera aggiunge le variabili membro:
  20. -       Mittente, stringa allocata dinamicamente
  21. -       Desrinatario, stringa allocata dinamicamente
  22.  
  23. Le classi devono prevedere gli opportuni costruttori, e devono gestire correttamente l’estensione dinamica fornendo le opportune funzionalità. Devono inoltre fornire le funzioni visualizza_dati e memorizza_dati. Si vuole un comportamento polimorfo. Si realizzi quindi una classe Elenco di manoscritti. La sessione di scrittura su file viene gestita dall’elenco mediante una sua opportuna funzione membro che definisce la variabile di tipo stream. La funzione memorizza_dati si limita a riceverla come parametro di ingresso. L'Elenco è realizzato ricorrendo ad un vettore allocato staticamente. La funzione di inserimento inserisce un manoscritto in ordine (rispetto al codice) e lancia una eccezione nel caso il codice sia già presente nell'elenco, la funzione di eliminazione elimina effettuando una ricerca per codice. L'eccezione è di tipo Duplicato, classe fornita dallo studente.
  24. Si strutturi il codice secondo le appropriate tecniche di programmazione modulare illustrate durante il corso e nei libri di testo adottati.
clone this paste RAW Paste Data