8 marzo 2011
Fondamenti di Informatica - Modulo A
Prof. Marco Gavanelli
8 marzo 2011
Esercizio (punti 16)
Al fine di evitare costosi ricoveri in ospedale, l'azienda ospedaliera ha deciso di mandare le infermiere a casa dei pazienti che hanno bisogno di cure semplici. L'azienda ha un file di testo visite.txt che contiene le visite che verranno effettuate durante la settimana (al massimo 100); per ogni visita si hanno:
- Paziente: nome del paziente. Dato di tipo stringa contenente al più 20 caratteri, senza spazi.
- Infermiera: nome dell'infermiera che visiterà il paziente. Dato di tipo stringa con al più 20 caratteri, senza spazi
- Giorno: Numero intero che rappresenta il giorno della settimana in cui avviene la visita.
Si desidera sapere qual è il paziente che verrà visitato più volte all'interno della settimana e quante volte verrà visitato. Si usi il seguente algoritmo:
- Nel
main
, si legga il file visite.txt tramite una procedura o funzione di lettura (punto 2), poi si invochi una procedura o funzione che calcola qual è il paziente con più visite (punto 3). Infine, si visualizzi, nelmain
, il nome del paziente con più visite ed il numero di volte in cui viene visitato. - Si legga il file visite.txt e se ne porti il contenuto in un opportuno array di strutture. Si mostri a video il contenuto del file.
- Si scriva una procedura o funzione che, dato l'array di strutture letto al punto 2 ed eventualmente altri parametri, calcoli e fornisca al
main
:- il nome del paziente visitato più volte
- il numero di volte in cui tale paziente viene visitato
Facoltativo (4 punti)
Poiché è preferibile che un paziente venga visitato sempre dalla stessa infermiera, o, al limite, da poche infermiere diverse, diventa importante sapere qual è il paziente che viene visitato da più infermiere diverse.
Si modifichi il programma in modo tale da visualizzare
- il nome del paziente che viene visitato da più infermiere diverse
- il numero di infermiere diverse che visitano tale paziente.
Si consegnino i file:
- un file
funzioni.c
che contiene le funzioni comuni alle due versioni (esercizio base e facoltativo) - un file
main.c
che contiene ilmain
e le funzioni usate solo nell'esercizio base - un file
facoltativo.c
che contiene ilmain
e le funzioni usate solo nell'esercizio facoltativo
più tutti i file header ritenuti necessari.