pashasnuff
Новые
- Регистрация
- 16 Апр 2014
- Сообщения
- 51
- Реакции
- 0
- Баллы
- 0
Pascal, задача
Сделал подпрограмму для того чтобы в векторе на первые позиции переставить отрицательные элементы, но вот ошибку найти не могу, помогите пожалуйста
Где F - заданная внешняя функция
А(М) - вектор
К - параметр которому присваивается номер того элемента , с которого начинается вторая часть переставленного массива.
Прошу помощи.
Сделал подпрограмму для того чтобы в векторе на первые позиции переставить отрицательные элементы, но вот ошибку найти не могу, помогите пожалуйста
Код:
Function F:real;
{+$F}
Function F(x:real):real;
begin
f:=x;
end;
{-$F}
Procedure Razd(var a:Vect;m:byte;F:REAL;k:byte);
var
i,j:byte;
x:real;
p:boolean;
begin
i:=1;
j:=m;
while i<j do
begin
if a[i]>=0 then
begin
p:=true;
while (j>i) and (p=true) do
if a[j]<0 then
begin
x:=a[i];
a[i]:=a[i+1];
a[i+1]:=k;
p:=false;
end;
end;
j:=j-1;
end;
i:=i+1;
end;
begin
if j=m then
begin
k:=J+1;
end
else
begin
If p=true then
begin
k:=i-1;
end
else
begin
k:=j;
end;
end;
end;
А(М) - вектор
К - параметр которому присваивается номер того элемента , с которого начинается вторая часть переставленного массива.
Прошу помощи.