Anteprima
Vedrai una selezione di 5 pagine su 16
Progetto d'esame Informatica Pag. 1 Progetto d'esame Informatica Pag. 2
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Progetto d'esame Informatica Pag. 6
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Progetto d'esame Informatica Pag. 11
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Progetto d'esame Informatica Pag. 16
1 su 16
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Avvio del programma

All'avvio viene chiesto all'utente se vuole o meno aprire un file già esistente. In caso affermativo viene richiamata la funzione leggi, dove:

  • Viene aperto e chiuso il file "CSV" direttamente all'interno della funzione.
  • Il file viene letto riga per riga.
  • In fine verrà restituita la rubrica con i contatti importati da file.

Menu: Aggiungi

La creazione del menù avviene attraverso un'enum e in seguito viene usato uno switch case per direzionare le scelte dell'utente.

Il primo case appartiene alla scelta "aggiungi", l'immissione avviene nel main per far scegliere al programmatore quali campi vuole utilizzare della struct.

La funzione "aggiungi()" prende la lista di destinazione e una struttura come fonte.

Menu: Visualizza

Per la scelta "visualizza" sono state create più funzioni per poi far scegliere al programmatore la combinazione da eseguire nel main.

Nel mio progetto ho usato prima la funzione d'ordinamento, che...

prendela rubrica da riordinare e la modalità in cui deve riordinare. Poi abbiamo la funzione visualizza, la quale a seconda della modalità passata viene visualizzato l'elenco dei contatti [NomeCognome] o [Cognome Nome]; In più viene stampato un numero a sinistra del contatto, in modo da poter scegliere se si vuole visualizzare un contatto in particolare o semplicemente tornare al menu; Se si sceglie di visualizzare un contatto in particolare viene chiamata la funzione che stamperà le informazioni del contatto, si potrà poi scegliere se cancellarlo modificarlo o tornare al menu. La funzione cancella è molto semplice, vengono dichiarate tre variabili d'appoggio di tipo Info che saranno i nostri cursori; Se il contatto è il primo, basterà spostarsi sul secondo e liberare il primo; Nel caso fossimo più avanti, spostiamo i cursori finché non arriviamo alla scelta, dopodiché colleghiamo il precedente al successivo.

liberiamo il temporaneo.

La funzione modifica fa scegliere all'utente cosa modificare, con la possibilità di modificare anche più volte grazie ad un ciclo while.

Menu: CercaUguale al visualizza con la differenza, che l'elenco stampato sarà dei contatti trovati.

Menu: OpzioniCon la voce opzioni ho raggruppato delle funzioni come l'apertura di un file e il salvataggio già presenti nel programma, ma dando la scelte all'utente di poterle usare in qualsiasi momento.

In più c'è l'opzione di ordinamento per nome o cognome, che resterà settata per tutto il programma finché l'utente non vorrà cambiarla.

L'opzione cancella tutta la rubrica invece, permette all'utente di cancellare tutti i contatti e a me di ricoprire l'argomento di funzione ricorsiva. Il salvataggio avviene con una semplice scrittura su file in modalità 'W' e ci avvertirà se è andato a buon fine.

  1. Apertura e chiusura del file avviene all'interno della funzione.
  2. Il riordinamento è molto semplice, setta solo una variabile usata poi nelle varie funzioni.
  3. La funzione "Delete all" funziona in modo simile alla funzione "cancella". Vengono dichiarate 3 variabili d'appoggio di tipo Info. La lista viene fatta scorrere fino al penultimo elemento con "prec", mentre "temp" sarà l'ultimo, che verrà poi deallocato. Successivamente si richiama la funzione finché non si arriva ad un solo elemento, una volta liberato la funzione ci ritornerà la lista vuota.
  4. L'opzione "apri" permette all'utente di scegliere se vuole o meno mantenere i contatti inseriti. In caso affermativo i contatti letti dal file verranno aggiunti a quelli già esistenti. In caso negativo viene svuotata la lista con "delete-all" e poi letti i contatti.
  5. Altre funzioni: "Formatta". La funzione "formatta" controlla se nome e cognome sono scritti

Iniziale maiuscola e resto in minuscolo, in caso non lo fossero li converte;

Se il numero di telefono sia numerico da 0-9 e composto da 10 o meno cifre, in caso non lo fosse il campo verrà sostituito con «Numero non valido»

Dettagli
Publisher
A.A. 2021-2022
16 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher sansalone99 di informazioni apprese con la frequenza delle lezioni di Laboratorio di informatica 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à della Calabria o del prof Gravina Raffaele.