Despre magicul PI...

Despre magicul PI...

Postby programator13 » Sun 08 Mar 2009, 16:31

As avea si eu o intrebare. Se cere un program care s acalculeze cu precizia epsilon valoarea lui pi, folosind dezvoltarea in serie:
pi=4(1-1/3+1/5-1/7+...).
Valoarea lui Epsilon se citeste.
EXEMPLE:
1. Epsilon=0.0001
PI cu precizia 0.000100 = 3.141547
Iata programul (pentru epsilon=0.1,0.01,0.001 functioneaza!) dar pentru epsilon=0.0001 nu. Intrebarea mea este unde este greseala? Va multumesc.

#include<stdio.h>
void main(){
float EPSILON;
float v1, v2;
int i=5, semn=1;
printf("EPSILON= ");
scanf("%f", &EPSILON);
v1=1.0;
v2=(float)1.0 -(float)1.0/3;
while(4*(v2>v1?v2-v1:v1-v2) >= EPSILON){
v1=v2;
v2+=semn*((float)1.0/i);
i+=2;
semn*=-1;
}
printf("\n------------------------------\n");
printf("%f\n",4*v2);
}
programator13
 
Posts: 0
Joined: Sun 08 Mar 2009, 16:26

Return to C / C++ / C#

Who is online

Users browsing this forum: No registered users and 0 guests

cron