Дано х -действительное. Составить программу для вычисления многочлена по схеме Горнера:
y1 = x^10 + 2*x^9 + 3*x^8+...+ 10*x + 11
y2 = 11*x^10 + 10*x^9 + 9*x^8+...+ 2*x + 1
что сразу бросилось в глаза:
begin
for j:=1 to i do s:=s*x;{<--действия в цикле...}
y1:=y1+(10-j+1)*s; {<--а вот это будет выполняться ПОСЛЕ цикла}
y2:=y+(j+1)*s;
end;
begin
for j:=1 to i do s:=s*x;
y1:=y1+(10-j+1)*s; {<--действия в цикле...}
y2:=y+(j+1)*s; {<--а вот это будет выполняться ПОСЛЕ цикла}
end;
по j, разумеется, при чем здесь i?
или это так и задумано?...
тогда зачем используешь в формулах j?
кстати, в том виде, что ты выложил, оно не компилируется.
вот так вроде работает...
проверила первую сумму на х=1 и х=2
uses crt;
var y2,y1,x,s:real;
i,j:integer;
begin
clrscr;
writeln('x = ');read(x);
y1:=11;y2:=1;s:=1;
for j:=1 to 10 do
begin
s:=s*x;
y1:=y1+(11-j)*s;
y2:=y2+(j+1)*s;
end;
writeln('y1 = ',y1:2:10);
writeln('y2 = ',y2:2:10);
readkey
end.
Спасибо, все работает... Кстати, почему у меня плюсы нельзя ставить?
сообщений мало... 100 наберешь - тогда можно будет
...но, повторюсь, это не схема Горнера.
лишь бы для первых 20 чисел проходило.
Вот так будет правильнее
да, это уже по схеме Горнера