Update function and extend global variabile
This commit is contained in:
parent
216d7598ce
commit
16ccd8c0e7
10
funzioni.c
10
funzioni.c
|
@ -7,8 +7,10 @@
|
|||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
extern Multa *multe[1000];
|
||||
|
||||
// Funzione che restituisce un puntatore alla struct Multa con i dati dell’infrazione ricevuti come parametri
|
||||
Multa *creaMulta(char targa[], char data[], char ora[], char velocita[]){
|
||||
Multa *creaMulta(char targa[], char data[], char ora[], float velocita[]){
|
||||
Multa *m = (Multa *)malloc(sizeof(Multa));
|
||||
strcpy(m->targa, targa);
|
||||
strcpy(m->data, data);
|
||||
|
@ -25,7 +27,7 @@ void iniziaMulta(Multa *multe[]){
|
|||
}
|
||||
|
||||
// Funzione che aggiunge una infrazione all’array globale, nel “primo” posto libero
|
||||
void aggiungiMulta(Multa *multe[], Multa *m){
|
||||
void aggiungiMulta(Multa *m){
|
||||
int i = 0;
|
||||
while(multe[i] != NULL){
|
||||
i++;
|
||||
|
@ -34,7 +36,7 @@ void aggiungiMulta(Multa *multe[], Multa *m){
|
|||
}
|
||||
|
||||
// Funzione che calcola il numero di infrazioni memorizzate nell’array globale che sono state comminate ad una automobile di cui è fornita la targa
|
||||
void calcolaInfrazioni(Multa *multe[], char targa[]){
|
||||
int calcolaInfrazioni(float targa[]){
|
||||
int i = 0;
|
||||
int count = 0;
|
||||
while(multe[i] != NULL){
|
||||
|
@ -43,7 +45,7 @@ void calcolaInfrazioni(Multa *multe[], char targa[]){
|
|||
}
|
||||
i++;
|
||||
}
|
||||
printf("Il numero di infrazioni per la targa %s è %d\n", targa, count);
|
||||
return count;
|
||||
}
|
||||
|
||||
// Funzione che salva sul file tutte le infrazioni contenute nell’array globale
|
||||
|
|
|
@ -12,10 +12,10 @@ typedef struct {
|
|||
char velocita[4];
|
||||
}Multa;
|
||||
|
||||
Multa *creaMulta(char targa[], char data[], char ora[], char velocita[]);
|
||||
Multa *creaMulta(char targa[], char data[], char ora[], float velocita[]);
|
||||
void iniziaMulta(Multa *multe[]);
|
||||
void aggiungiMulta(Multa *multe[], Multa *m);
|
||||
void calcolaInfrazioni(Multa *multe[], char targa[]);
|
||||
void aggiungiMulta(Multa *m);
|
||||
int calcolaInfrazioni(float targa[]);
|
||||
void salvaInfrazioni(Multa *multe[]);
|
||||
|
||||
#endif //AUTOVELOX_FUNZIONI_H
|
||||
|
|
14
main.c
14
main.c
|
@ -21,14 +21,14 @@ int main(void) {
|
|||
Multa *m3 = creaMulta("CD456EF", "12/10/2024", "12:32", "140");
|
||||
Multa *m4 = creaMulta("EF789GH", "12/10/2024", "12:33", "150");
|
||||
|
||||
aggiungiMulta(multe, m1);
|
||||
aggiungiMulta(multe, m2);
|
||||
aggiungiMulta(multe, m3);
|
||||
aggiungiMulta(multe, m4);
|
||||
aggiungiMulta(m1);
|
||||
aggiungiMulta(m2);
|
||||
aggiungiMulta(m3);
|
||||
aggiungiMulta(m4);
|
||||
|
||||
calcolaInfrazioni(multe, "AB123CD");
|
||||
calcolaInfrazioni(multe, "CD456EF");
|
||||
calcolaInfrazioni(multe, "EF789GH");
|
||||
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);
|
||||
|
||||
|
|
Loading…
Reference in New Issue