home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / dtx9303 / monte / schuss.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1993-06-14  |  1.1 KB  |  34 lines

  1. (* ------------------------------------------------------ *)
  2. (*                      SCHUSS.PAS                        *)
  3. (*            Einfache Ermittlung der Zahl Pi             *)
  4. (*        (c) 1993 Dr.Lothar Wenzel & DMV-Verlag          *)
  5. (* ------------------------------------------------------ *)
  6. PROGRAM Schuss;
  7.  
  8. CONST
  9.   Seite   = 2;        { Seitenlänge des Quadrates = Durchmesser Kreis }
  10.   Anzahl  = 10000000; { Anzahl der Versuche }
  11.   Schritt = 100000;   { Abstand zwischen zwei Pi-Abschätzungen }
  12.  
  13. VAR
  14.   i       : LongInt;  { Zählindex }
  15.   x,y     : REAL;     { zufälliger Punkt im Quadrat }
  16.   Summe   : LongInt;  { Anzahl der Treffer im Kreis }
  17.  
  18. BEGIN
  19.   Summe := 0;
  20.   FOR i := 1 TO Anzahl DO BEGIN
  21.     x := 2*Random;
  22.     y := 2*Random;
  23.     IF ((x - 1)*(x - 1) + (y - 1)*(y - 1) < 1) THEN
  24.       Summe := Succ(Summe);
  25.     IF (i MOD Schritt = 0) THEN
  26.       WriteLn(i:8, 4*(Summe/i)); { Näherung für Pi }
  27.   END;
  28.   WriteLn;
  29.   WriteLn('Ende der Rechnung.');
  30.   ReadLn;
  31. END.
  32. (* ------------------------------------------------------ *)
  33. (*                 Ende von SCHUSS.PAS                    *)
  34.