ciao a tutti non riesco a far girare questo codice non mi vengono i ris finali dei km percorsi del costo totale e della data ultima con tipo R per la citta di TORINO
codice:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 100
#define NAME 20
int main(int argc,char*argv[])
{
FILE*fp;
char dest[NAME],data[NAME];
int met,i;
char str[MAX];
char tipo;
float km,tot_km,tot_costo;
fp=fopen("viaggi.txt","r");
if(fp==NULL)
{
printf("errore\n");
return -1;
}
if(argc!=2)
{
printf("errore numero parametri del file %s\n",argv[1]);
return -1;
}
tot_km=0.00;
i=0;
while(fgets(str,MAX,fp)!=NULL)
{
sscanf(str,"%s %s %d %c",dest,data,&met,&tipo);
if(strcmp(dest,argv[1])==0 && tipo=='R')
i++;
{
km=(float)met/100.00;
tot_km+=km;
tot_costo=(5.00*i)+(tot_km*0.10);
}
}
printf("chilometri totali verso %s: %.2f\n",argv[1],tot_km);
printf("costo totale verso %s: Euro %.2f\n",argv[1],tot_costo);
printf("volte R = %d",i);
fclose(fp);
return 0;
}
il file sorgente è:
dest data met tipo
torino 22/01/2011 120000 A
milano 01/03/2011 80000 R
genova 03/06/2011 100000 A
bologna 01/02/2011 100000 A
torino 15/01/2011 120000 R
milano 20/01/2011 80000 R
torino 01/01/2011 80000 A
torino 22/01/2011 80000 R
e il file di output deve essere
Chilometri totali verso torino: 200.00
Data ultimo viaggio: 22/01/2011 // questa non l ho ancora fatto(nn so come si fa help me)
Costo totale viaggi verso torino: Euro 30.00
Il costo totale dei viaggi, sapendo che la tariffazione è di 5 € per ogni viaggio più 10 cent. al chilometro.
GRAZIE!!