home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / spezial / 15 / numint / probabil.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-05-17  |  1.2 KB  |  38 lines

  1. (* ------------------------------------------------------------------------- *)
  2. (*                               PROBABIL.PAS                                *)
  3. (*                 Integration der Normalverteilungsfunktion                 *)
  4. (* ------------------------------------------------------------------------- *)
  5.  
  6. PROGRAM Probability;
  7.  
  8. USES
  9.   NumInt;
  10.  
  11. VAR
  12.   Mean, SDev, Delta, P, eps : FLOAT;
  13.   Decimals                  : BYTE;
  14.   N                         : LONGINT;
  15.  
  16. {$F+}
  17. FUNCTION rho(x : FLOAT) : FLOAT;
  18.   (* die Dichtefunktion *)
  19. BEGIN
  20.   rho := 1/(SDev*Sqrt(2*Pi)) * Exp(-0.5*Sqr((x-Mean)/SDev))
  21. END;
  22. {$F-}
  23.  
  24. BEGIN
  25.   Write(^M^J'Bitte Daten eingeben:'^M^J);
  26.   Write(^M^J'Mittelwert:  µ = '); Read(Mean);
  27.   Write(    'Streuung:    σ = '); Read(SDev);
  28.   Write(    'Abweichung:  δ = '); Read(Delta);
  29.   Write(^M^J'Genauigkeit der Berechnung in Dezimalstellen: ');
  30.   Read(Decimals);
  31.   eps := Exp(-Abs(Decimals)*Ln(10));
  32.   N := Succ(Trunc((2*Delta)/SDev * Sqrt(Exp(-1.5)/(Sqrt(2*pi)*eps))));
  33.   WriteLn('--> ', N, ' Stützstellen!'^M^J);
  34.   P := 100 * Trapezoid(@rho, Mean-Delta, Mean+Delta, N);
  35.   WriteLn('P(', Mean-Delta:0:2, ' ≤ X ≤ ',
  36.                 Mean+Delta:0:2, ') = ', P:0:1, '%'^M^J^M^J);
  37. END.
  38.