Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Помогите найти ошибку в программе интерполяции
Люди спасите пожалуйста, просто горю.
вот каркас программы, подскажитте что не так.
Заранее спасибо
Code
program z1;
type vector=array[1..10] of real;
var n,i,j: integer; x,y:vector; z,pn:real;
procedure inter(n:integer; x:vector; y:vector; z:real; var pn:real);
var i,j:integer; p:real;
begin
  pn:=0;
  for i:=0 to n do
  begin
   p:=1;
   for j:=0 to n do
    if j<>i then p:=P*(x-x[j])/(x[i]-x[j]);
   Pn:=Pn+y[i]*P;
   end;
end;
Begin    write('n=');readln(n);
for j:=0 to n do begin;
write('x',j,'=');readln(x[j]);
write('y',j,'=');readln(y[j]);
end;
inter(n,x,y,z,pn);
writeln('Pn=',Pn:0:6);
END.
1 | Автор: president_ml | 2010-12-23, 20:14   |  Репутация: [ + 0 ]
В строчке
Code
    if j<>i then p:=P*(x-x[j])/(x[i]-x[j]);
у тебя есть x без указания индекса.
2 | Автор: -Ali- | 2011-02-02, 21:00   |  Репутация: [ + 3 ]
  • Страница 1 из 1
  • 1
Поиск: