Bonsoir,
J'ai cet exercice à faire "Supposons qu’on a un fichier « nombre.txt » contenant des nombres (séparés par des espaces ou des sauts de ligne). Ecrire un programme permettant de lire ces nombres, de calculer et d’afficher leur moyenne." .J'ai écrit mon programme mais après exécution rien ne se passe
Je vous donne l'exemple du fichier sur le quel j'ai travaillé
et le code de mon programme
Pourriez vous m'aider à trouver le problème et merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 #include <stdio.h> #include <stdlib.h> #include <math.h> int x(FILE *f,int *a)//retourne la somme des nombres et met dans a le nombre des nombres. { int n=0; int s=0; while (n!=EOF) { n=getc(f); (*a)++; int j=0; while ((n!=' ')&&(n!='\n')) { j++; n=getc(f); } if(j!=0) { fseek(f,-(j+1),SEEK_CUR); n=getc(f); for(int i=j;i>0;i--) { s=s+n*pow(10,i-1); n=getc(f); } } } return s; } int main() { int r=0; int a=-1; FILE *f1=NULL; f1=fopen("nombre.txt","r"); if (f1==NULL) { printf("probleme d'ouverture"); } else { r=x(f1,&a); printf("la moyenen est %f",(float)r/a); } fclose(f1); }
ps: j'ai essayé d'exécuter l'algorithme sur papier avec des exemples et tout me semble correct .
Partager