001 package de.hska.java.aufgaben.kontrollstrukturen;
002
003 /**
004 * Berechnet die Zahl PI über das Verhältnis der
005 * Anzahl zufälliger
006 * Koordinaten (x,y), die sich in einem Quadrat mit Kantenlänge
007 * 1 zu dem darin enthaltenen Viertelkreis mit Durchmesser 1
008 * befinden.
009 *
010 * <p>
011 * <a href="http://www.home.hs-karlsruhe.de/~pach0003/informatik_1/aufgaben/kontrollanweisungen.html#wallissche_produkt">Zurück zum Aufgabentext</a>
012 * </p>
013 *
014 *
015 * @author Christian Pape
016 */
017 public class PiBerechnen {
018
019 /**
020 * Gibt die Zahl Pi näherungsweise aus.
021 */
022 public static void main(String[] args) {
023 final int n = 10000000;
024 int anzahlImKreis = 0;
025
026 for (int i = 0; i < n; i++) {
027 double x = Math.random();
028 double y = Math.random();
029 if ( x*x + y*y <= 1) {
030 anzahlImKreis++;
031 }
032 }
033
034 System.out.println(anzahlImKreis * 4.0 / n);
035
036 }
037
038 }