Acrokf

Solo disponible en BuenasTareas
  • Páginas : 2 (427 palabras )
  • Descarga(s) : 0
  • Publicado : 21 de enero de 2012
Leer documento completo
Vista previa del texto
El número Pi es un numero irracional y se define como la relación entre la circunferencia y su diámetro. Tantas veces hemos visto esa constante, pero alguna vez se preguntaron ¿Cómo se calcula?Bien, en realidad existen varios métodos para calcularlo, la forma en que lo voy a hacer es la siguiente. Este método se basa se basa en una serie que se define asi: 

4 - (4/3) + (4/5) - (4/7) +(4/9) - (4/11) ......... = Pi 

Como se puede observar se parte del número 4 y a este se le van restando y sumando alternadamente (4/siguiente número impar, empezando del 3). Teóricamente si se repiteeste proceso "infinitamente" llegaremos al número Pi. 

Pongo "infinitamente" entre comillas porque para una computadora repetir un proceso infinitamente es imposible, esto es por cuestiones dememoria, así que debemos definir un límite a la hora de hacer los cálculos. 

Para el siguiente programa use un arreglo de un tamaño de 10000000, este arreglo hará la función del denominador, por lotanto en la primera posición del arreglo estará un 3, en la segunda un 5....y así sucesivamente. También hare uso de una variable de tipo double a la que llamare Pi y la inicializare en 4, para empezar elcálculo. 

Después de llenar el denominador, llamare al método que calcula Pi, este método tiene dos partes, una que resta y otra que suma. En cada vuelta del ciclo tiene que sumar o restar, perono hacer las dos en un ciclo, para controlar esto se usa variable con una funición de bandera que puede tomar dos valores 1 o 0, si es 0 resta y si es 1 suma. 

Cuando se cumple el ciclo significaque ya se ha calculado Pi. 

Muy bien basta de tanta teoria, asi que aqui esta el codigo: 

public class CalcularPi 

static int denominador[] = new int[10000000]; //Para modificar la presiciónajusta 
//este valor 

public static void LlenarDenominador() 

int j = 0; 

for(int i=0; i<20000000; i++) //Para modificar la presición ajusta este 
//valor(Deberá ser el doble que el...
tracking img