36 lines
1.9 KiB
C
36 lines
1.9 KiB
C
/*Si vuole realizzare un programma per il seguente problema: si vogliono memorizzare i dati delle automobili che superano il limite di velocità. Il programma principale deve poter eseguire operazioni quali l’inserimento di una nuova infrazione, la ricerca delle infrazioni a partire dalla targa del veicolo oppure per data, la cancellazione dall’archivio di una infrazione a seguito del pagamento. Le infrazioni vengono memorizzate in un file dal nome fisso.
|
||
Si richiede di:
|
||
Definire una struttura Multa adatta a contenere i dati di una infrazione (targa, velocità misurata, data e ora) e un array globale in grado di contenere i puntatori di un massimo di 1000 infrazioni. Viene gestito con il valore NULL nel primo posto libero.
|
||
Realizzare una funzione che restituisce un puntatore alla struct Multa con i dati dell’infrazione ricevuti come parametri
|
||
Realizzare una funzione che aggiunge una infrazione all’array globale, nel “primo” posto libero
|
||
Realizzare una funzione che calcola il numero di infrazioni memorizzate nell’array globale che sono state comminate ad una automobile di cui è fornita la targa.
|
||
Realizzare la funzione che salva sul file tutte le infrazioni contenute nell’array globale.
|
||
*/
|
||
|
||
#include <stdio.h>
|
||
#include "funzioni.h"
|
||
|
||
Multa *multe[1000];
|
||
|
||
int main(void) {
|
||
|
||
iniziaMulta(multe);
|
||
|
||
Multa *m1 = creaMulta("AB123CD", "12/10/2024", "12:30", "120");
|
||
Multa *m2 = creaMulta("AB123CD", "12/10/2024", "12:31", "130");
|
||
Multa *m3 = creaMulta("CD456EF", "12/10/2024", "12:32", "140");
|
||
Multa *m4 = creaMulta("EF789GH", "12/10/2024", "12:33", "150");
|
||
|
||
aggiungiMulta(m1);
|
||
aggiungiMulta(m2);
|
||
aggiungiMulta(m3);
|
||
aggiungiMulta(m4);
|
||
|
||
printf("Infrazioni per la targa AB123CD: %d\n", calcolaInfrazioni("AB123CD"));
|
||
printf("Infrazioni per la targa CD456EF: %d\n", calcolaInfrazioni("CD456EF"));
|
||
printf("Infrazioni per la targa EF789GH: %d\n", calcolaInfrazioni("EF789GH"));
|
||
|
||
salvaInfrazioni(multe);
|
||
|
||
}
|