jueves, marzo 17, 2005

PI en c

Aquí subiré todos los programas que me dejen en mi escuela, que realice, o que encuentre en Internet y se me hagan interesantes:

* Empecemos con uno:
Es un programa donde... saca PI, mil números exactos..lo eh sacado de la Internet.

Programa: Turbo C, C, Borland C++

/* A spigot algorithm for the Digits of \pi, Stanley Rabinowitz and Stan Wagon, Amer.Math.Monthly, March 1995, 195-203*/
#include
#define N 1000 /* Si quieres reducir los decimales en este renglon y el que sigue esta el truco */
#define LEN 10*N/3
main()
{ int i, j, k, q, x, nines, predigit;
long a[LEN];
for(j=0;jnines=0; predigit=0;
for(j=0;j q=0; for(i=LEN;i;i--)
{
x = 10*a[i-1] + q * i; a[i-1] = x % (2*i-1);
q = x / (2*i-1);
}
a[0] = q % 10; q = q / 10;
if (q==9)
{
nines++;
}
else if (q==10)
{
printf("%d",predigit+1);
predigit=0; for(;nines;nines--) printf("%d",0);
}
else
{
printf("%d",predigit);
predigit = q;
for(;nines;nines--) printf("%d",9);
};
};
printf( "%d \n", predigit );
getch();
}


Es muy interesante aunque realmente no lo comprendo del todo... espero con el paso del tiempo que voy aprendiendo le entienda...

1 Comentarios:

At 1:08 p.m., Blogger maurici0 said...

Ando probando esta cosa.. para ver como se va a ver esta cosa.. .de la cosa que se va viendo, conforme la veo, y veo que no tiene nada que ver con lo que veo..

 

Publicar un comentario

<< Home