Новые сообщения · Правила  
Страница 1 из 11
Модератор форума: 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 из 11
Поиск: