Una compagnia assicurativa registra i principali dati relativi alle polizze RC-auto e i dati relativi agli incidenti automobilistici segnalati all'assicurazione su due file.
Il file relativo agli incidenti contiene il numero di incidenti e per ogni incidente le seguenti informazioni:
Il file relativo alle polizze contiene il numero di polizze e per ogni polizza le seguenti informazioni:
In base ai dati contenuti nei due file la compagnia deve aggiornare le classi di merito associate alle polizze secondo il seguente criterio: se l'autoveicolo non è responsabile di alcun incidente, la classe di merito viene decrementata di uno (fino ad un minimo di 0), mentre per ogni incidente di cui l'autoveicolo è responsabile, la classe di merito viene incrementata di 2 (fino ad un massimo di 20).
Si richiede di risolvere i seguenti punti:
Ad esempio, per il file di incidenti in Fig.1, la funzione al punto 2 deve costruire l'array in Fig.2, e la funzione al punto 3, ricevendo come parametro tale lista ed il nome del file di polizze in Fig.3, deve aggiornare tale file come in Fig.4.
--------------------------- Fig. 1 file di incidenti 5 EE333FF 01-01-2000 1 XX999YY 23-05-2000 0 GG444HH 12-08-2000 1 EE333FF 02-10-2000 0 EE333FF 20-12-2000 1 --------------------------- Fig. 2 array 0 |AA111BB|0| 1 |CC222DD|0| 2 |EE333FF|2| 3 |GG444HH|1| --------------------------- Fig. 3 file di polizze 4 AA111BB 14 Anna Medi CC222DD 1 Ben Santi EE333FF 17 Cat Distratti GG444HH 10 Don Rossi --------------------------- Fig.4 file di polizze aggiornato 4 AA111BB 13 Anna Medi CC222DD 0 Ben Santi EE333FF 20 Cat Distratti GG444HH 12 Don Rossi ---------------------------