Олесенька » 22 ноя 2013, 17:33
помогите исправить задачу пожалуйста-pascal
Найти сумму отрицательных членов последовательности....
последовательность ((-1)^(k-1)*x^(h-1)*e^(-p*k))/(k+1)!
где
x=x0+(i-1)*h;
p=max(a,b,c,d);
i=1,...,m
с клавы вводим значения- a=1.2 b=-0.5 c=-3.4 d=1.3 x0=1.4 h=0.2 m=5
n=7
то что смогла сделать, не понимаю что не так...
Код:
uses crt;
Var a, b, x0, h, p, x,ma, ak, s, c, d, p0,ss,ssum: real;
n, m, l, g, i, k,o,q: integer;
function fact(n:integer):longint;
begin
if q=1 then fact:=1
else fact:=fact(q-1)*q;
end;
begin
clrscr;
writeln('VVEDITE a, b, c, d, x0, h, m');
read(a, b, c, d, x0, h, m);
if a>b then p:=a
else p:=b;
if c>p then p:=c;
if d>p then p:=d;
{perebor X}
ssum:=0;
for i:=1 to m do
begin
x:=x0+(i-1)*h;
for k:=1 to n do
ss:=(power(-1,k-1)*power(x,k-1)*power(e,-k*i))/fact(k+1);
if ss<0 then ssum:=ssum+x;
writeln(ssum);
end;
end.
[img]http://radikall.com/images/2013/11/22/gOpk.png[/img]
помогите исправить задачу пожалуйста-pascal
Найти сумму отрицательных членов последовательности....
последовательность ((-1)^(k-1)*x^(h-1)*e^(-p*k))/(k+1)!
где
x=x0+(i-1)*h;
p=max(a,b,c,d);
i=1,...,m
с клавы вводим значения- a=1.2 b=-0.5 c=-3.4 d=1.3 x0=1.4 h=0.2 m=5
n=7
то что смогла сделать, не понимаю что не так...
Код:
uses crt;
Var a, b, x0, h, p, x,ma, ak, s, c, d, p0,ss,ssum: real;
n, m, l, g, i, k,o,q: integer;
function fact(n:integer):longint;
begin
if q=1 then fact:=1
else fact:=fact(q-1)*q;
end;
begin
clrscr;
writeln('VVEDITE a, b, c, d, x0, h, m');
read(a, b, c, d, x0, h, m);
if a>b then p:=a
else p:=b;
if c>p then p:=c;
if d>p then p:=d;
{perebor X}
ssum:=0;
for i:=1 to m do
begin
x:=x0+(i-1)*h;
for k:=1 to n do
ss:=(power(-1,k-1)*power(x,k-1)*power(e,-k*i))/fact(k+1);
if ss<0 then ssum:=ssum+x;
writeln(ssum);
end;
end.