Examen programmation c

Fermé
fightgirl - 12 déc. 2007 à 17:12
 sam - 8 janv. 2008 à 19:46
Bonjour,
j'ai un soucis avec mon programme,
il doit calculer : la somme(de i=0 a l'infini) des : ( (-1) ^i) / ( (2i) +1)
ce qui doit faire environ pi:3.151493
il devrai m'afficher :

dans une première colonne: les nombres de 1 jusqu'a ce que la precision soit celle qui a été entrée dans la fonction 1
dans une seconde colonne: les valeurs de la somme
dans une troisième colonne:l'ecart entre la valeur de la somme et la valeur théorique pi


quelqu'un peut m'aider ???

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define pi 3.141593

float saisie(float *N)
{
printf("entrez la precision:\n");
scanf("%f",N);
return(*N);
}

float fpi(float som)
{
int i;
float N,p;
for(i=0;i<=N;i=i*2)
{

p=1;
p = pow ( ( -1.0 ) , i );
som = som + (p/((2*i)+1));
}

return (som);
}

int main()
{
int i;
float valpi=0,ecart=0;
float som,N;
saisie(&N);
FILE *FIC;
FIC=fopen ("data.dat","wt");

for(i=0;i<=N;i=i*2)
{

valpi = fpi(i);
ecart = pi - valpi;
printf("%d %7.6f %7.6f\n",i,valpi,ecart);
fprintf(FIC,"%d %7.6f %7.6f\n",i,valpi,ecart);
}
fclose(FIC);
system("pause");

return 0;
}

1 réponse

j'ai un examen la semaine prochaine et j'ai pas encore trouver des sujet d'examens concernant la programmation en c ...si vous pouvez m'aider mais avant que sa sra trop tard...merci bien
0