update
This commit is contained in:
parent
28160b3ff7
commit
ca02c7b2aa
|
@ -0,0 +1,9 @@
|
||||||
|
# AUTOVELOX
|
||||||
|
|
||||||
|
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.
|
30
funzioni.c
30
funzioni.c
|
@ -3,3 +3,33 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "funzioni.h"
|
#include "funzioni.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
// 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[], char limite[], char importo[], char pagata[]){
|
||||||
|
Multa *m = (Multa *)malloc(sizeof(Multa));
|
||||||
|
strcpy(m->targa, targa);
|
||||||
|
strcpy(m->data, data);
|
||||||
|
strcpy(m->ora, ora);
|
||||||
|
strcpy(m->velocita, velocita);
|
||||||
|
strcpy(m->limite, limite);
|
||||||
|
strcpy(m->importo, importo);
|
||||||
|
strcpy(m->pagata, pagata);
|
||||||
|
return m;
|
||||||
|
}
|
||||||
|
|
||||||
|
void iniziaMulta(Multa *multe[]){
|
||||||
|
for(int i = 0; i < 1000; i++){
|
||||||
|
multe[i] = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void aggiungiMulta(Multa *multe[], Multa *m){
|
||||||
|
int i = 0;
|
||||||
|
while(multe[i] != NULL){
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
multe[i] = m;
|
||||||
|
}
|
||||||
|
|
16
funzioni.h
16
funzioni.h
|
@ -5,4 +5,20 @@
|
||||||
#ifndef AUTOVELOX_FUNZIONI_H
|
#ifndef AUTOVELOX_FUNZIONI_H
|
||||||
#define AUTOVELOX_FUNZIONI_H
|
#define AUTOVELOX_FUNZIONI_H
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char targa[8];
|
||||||
|
char data[11];
|
||||||
|
char ora[6];
|
||||||
|
char velocita[4];
|
||||||
|
char limite[4];
|
||||||
|
char importo[6];
|
||||||
|
char pagata[2];
|
||||||
|
}Multa;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Multa *creaMulta(char targa[], char data[], char ora[], char velocita[], char limite[], char importo[], char pagata[]);
|
||||||
|
void iniziaMulta(Multa *multe[]);
|
||||||
|
void aggiungiMulta(Multa *multe[], Multa *m);
|
||||||
|
|
||||||
#endif //AUTOVELOX_FUNZIONI_H
|
#endif //AUTOVELOX_FUNZIONI_H
|
||||||
|
|
14
main.c
14
main.c
|
@ -1,6 +1,16 @@
|
||||||
|
/*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 <stdio.h>
|
||||||
|
|
||||||
int main(void) {
|
int main(void) {
|
||||||
printf("Hello, World!\n");
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue