Alexander: Math.PI erweitern???

Beitrag lesen

Servus,

wenn ich folgenden quellcode compilliere und dann aufrufe erhalte ich nur 3,141592653589793

Nun, ich weiß ja nicht, weshalb Dir eine Genauigkeit von 15 Nachkommastellen nicht ausreicht, aber bitte...

http://www.uni-leipzig.de/~sma/pi_einfuehrung/ hier findest Du eine Einführung in die verschiedenen Methoden, Pi exakter zu berechnen.

Zu der Monte-Carlo Methode kann ich Dir sogar ein fertiges Java-Progrämmchen geben. Wenn Du allerdings PI sinnvoll verwenden willst, solltest Du lieber eine andere Methode wählen, da diese nicht sehr schnell gegen PI konvergiert. Es werden also viele Berechnungen durchgeführt, der Rechner qualmt und PI ist immer noch nicht sehr "genau".

import java.math.*;

public class mc_pi {

public static void main(String args[]) {

int schritte = 10000;
      int treffer = 0;
      double radius = 1.0;
      double x, y, entfernung, pi;

for(int i=0; i < schritte; i++) {
         x = Math.random();
         y = Math.random();
         entfernung = Math.sqrt(x*x + y*y);
         if( entfernung <= radius ) {
            treffer = treffer + 1;
         }
      }
      pi = 4 * ((double)treffer / (double)schritte);
      System.out.println(" Monte Carlo Schritte: "+ schritte);
      System.out.println(" davan Treffer: "+ treffer);
      System.out.println(" Pi: "+ pi);
   }
}

Viel Spaß...

Alex :)