.


           


{ }

Procedure Recurro_binomial(n, m : integer; p : real; var p1 : real);

var

i : integer;

begin

Extent(1 - p, n, p1);

for

i := 1 to m do p1 := (p1*(n - i + 1)*p)/(i*(1 - p))

end;

{----------------------------------------------------------------------------------------}

begin

write(' '); readln(d); c := sqrt(d);

write(' '); readln(e);

write(' '); readln(n);

write(' '); readln(m);

pp := 1 - FF(e/c);

sum := 0;

for i := 0 to m do

begin

Recurro_binomial(n, i, pp, p1);

sum := sum + p1

end;

writeln(' ', sum:1:6)

end.



16


 

Program Task16_1;

uses WinCrt;

var

x, y, p, e, pp : real;

i, n, m, a, b : longint;

{----------------------------------------------------------------------------------------}

{ 頠 }

{ 0 x. - }

Function

FF(x : real) : real;

var

n : integer;

u, I : real;

begin

if x >= 5

then FF := 1

else if x <= -5

then FF := -1

else

begin

u := x; n := 0; I := 0;

repeat

I := I + u; n := n + 1;

u := -u*(x*x*(2*n - 1)/(2*n*(2*n + 1)))

until abs(u) < 0.00001;

FF := 2*I/sqrt(2*Pi)

end

end;

{----------------------------------------------------------------------------------------}

{ - }