Descrizione |
Implementare una classe che descrive un ‘pass’, il foglietto che in alcune scuole consente agli alunni in ritardo di entrare comunque in aula registrando l’evento. Nello stato interno mettere: cognome (string, 29 caratteri), ritardo (int32), data (string, 10 caratteri); realizzate l’accesso tramite properties.
Definire poi la classe ‘Ritardi’ per gestire un file di oggetti Pass: nello stato interno mettete il nome per un file di testo (ftesto) ed uno per un file binario (fbinario); mettete inoltre un vettore di 100 pass. Implementare poi i seguenti metodi:
- Travasa: legge i dati di nuovi pass eventualmente presenti nel file di testo e li aggiunge al vettore; se il vettore diventa pieno i pass in più vengono ignorati.
- Salva: trasferisce i pass dal vettore al file binario (che deve essere creato nuovo)
- Annulla: riceve la posizione nel file binario (1=primo, 2=secondo ecc.) di un pass che deve essere sovrascritto con spazi nei campi cognome e data e con il valore 0 nel campo ritardo.
- Cerca: riceve una data per localizzare sul file binario tutti i pass con quella data per azzerare i minuti di ritardo corrispondenti.
- Add per aggiungere un pass al vettore: se il vettore è diventato pieno lo stesso metodo prima lo ‘svuota’ salvando i pass in coda a quelli esistenti sul file binario.
- Export: salva sul file di testo i pass del vettore con ritardo superiore ad un certo numero di minuti.
- Aggiorna: riceve i nuovi dati e la posizione di un pass da aggiornare sul file binario.
- Azzera: riceve i dati vecchi di un pass che deve essere prima localizzato sul file binario per poi sovrascrivere tutti i sui campi (con spazi nei campi cognome e data e 0 come ritardo). |