Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Знатоки Borland Pascal, помогите!!! В чем ошибка?

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Velikan
Гость





СообщениеДобавлено: Вт Дек 23 2003 03:58    Заголовок сообщения: Знатоки Borland Pascal, помогите!!! В чем ошибка? Ответить с цитатой

Где ошибка в след. коде? А именно в процедуре QuickSort (должна сортировать записи по году). С закомментированными строчками работает отлично, но нужно это сделать через вызов функции, вот тут то и начинается.... Заранее спасибо!

program p3;
uses crt;
const n=500;
type
knigi = record
izd_vo, autor, naim: string[25];
tir_osn, year_izd : integer;
tir_dop: char;
end;
kniga = array [1..n] of knigi;
ftext = text;

func = function(e1,e2:knigi):integer;



procedure QuickSort(var izd:kniga; const l,r:integer; f1:func);
var y,i,j:integer;
x,temp: knigi;
begin
i:=l;
j:=r;
x:=izd[(l+r) div 2];
{y:=izd[(l+r) div 2].year_izd;}
while i<=j do
begin
while {izd[i].year_izd<y} f1(izd,x)=-1 do inc(i);
while [i]{izd[j].year_izd>y}
f1(izd[j],x)=1 do dec(j);
if i<=j then
begin
temp:=izd[i];
izd[i]:=izd[j];
izd[j]:=temp;
inc(i);
dec(j);
end;
end;
if l<j then QuickSort(izd,l,j,f1);
if i<r then QuickSort(izd,i,r,f1);
end;






{$F+}
function comp1(e1,e2:knigi):integer;
begin
if e1.year_izd < e2.year_izd then comp1:=-1;
if e1.year_izd > e2.year_izd then comp1 :=1
else comp1:=0;
end;
{$F-}


var
izdanie : kniga;
i:integer; {кол-во записей}


BEGIN
{................................}
{................................}

QuickSort_year1(izdanie,1,i,comp1);

{................................}
{................................}

END.
Вернуться к началу
Velikan
Гость





СообщениеДобавлено: Вт Дек 23 2003 04:00    Заголовок сообщения: P.S. Вызов функции, как параметра процедуры. Ответить с цитатой

P.S. Вызов функции, как параметра процедуры.
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...