Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #define FILE_IN "f.txt"
- #define FILE_OUT "dati.txt"
- #define D 10.0
- #define PROG "./coulomb" //dobbiamo prendere l'eseguibile del programma
- #define STRLEN 256
- #define MAX 100
- int main (void)
- {
- char s[STRLEN];
- FILE*pf;
- float q1,q2,sommaf;
- for (q1=1.0; q1<=100; q1+=1.0)
- {for(q2=1.0; q2<=100; q2+=1.0)// i due cicli sono annidati perchè così ogni volta che ho un valore di q1 avro tutti i 1000 valori di q2
- {
- pf=fopen(FILE_OUT,"w"); // apro il file dei dati in scrittura per scrivere tutti i valore iterati
- if (pf==NULL) // CONTROLLO: se non ci sono i permessi o non esiste il file
- {
- printf("Non ho potuto aprire il file %s!\n",FILE_OUT);
- return EXIT_FAILURE; //dice al sistema operativo che ha fallito nell'apertura del programma
- }
- else
- {
- fprintf(pf,"%.3f\n%.3f\n%.3f\n",q1,q2,D);//scriviamo questi dati reiterati in dati.txt
- fclose(pf); //chiudiamo il file
- system(PROG);//Stiamo richiamando il programma precedente che fa il calcolo della forza di coulomb
- pf=fopen(FILE_IN,"r");// apro il file della forza in lettura per leggermele tutte
- if (pf==NULL) // CONTROLLO: se non ci sono i permessi o non esiste il file
- {
- printf("Non ho potuto aprire il file %s!\n",FILE_IN);
- return EXIT_FAILURE; //dice al sistema operativo che ha fallito nell'apertura del programma
- }
- fscanf(pf,"%s",s);//acquisisco le forze trovate in una stringa
- fclose(pf);
- sommaf+=atof(s);//sta accumulando le forze in una variabile numero
- }
- }
- }
- printf("La forza media è pari a: %.3f\n",sommaf/(MAX*MAX));
- return EXIT_SUCCESS;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement