Найти сумму отрицательных членов последовательности

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
Олесенька
Сообщения: 7
Зарегистрирован: 30 ноя 2012, 17:10

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.
Ответить