Передаваемая в подпрограмму функция - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Нужно адаптировать данную программу, написанную на ABC.NET, для FREE Pascal. Выдает ошибку "wrong number of parameters specified for call to IsGT"
program var_12;
type TVector = array [1..10000] of integer;
     TCmpFunc = function(a, b: integer): boolean;
var
  a:TVector;
  num,k:integer;
  f:text;
    function IsGT(a, b: integer): boolean;
    begin
    IsGT:=a>b;
    end;
  procedure SortBubble(var n:integer; cmp: TCmpFunc);
    var i,j,buf:integer;
    begin
    for i:=1 to n-1 do
      for j:=i+1 to n do
        if cmp(a[i],a[j]) then
        begin
          buf:=a[i];
          a[i]:=a[j];
          a[j]:=buf;
        end;
    end; 
begin
assign(f, 'input.txt');
reset(f);
readln(f,num);
  for k:=1 to num do
      read(f,a[k]);
SortBubble(num,IsGT);
close(f);   
assign(f, 'output.txt');
rewrite(f);
  for k:=1 to num do
  write(f,a[k],' ');
close(f);
end.

Решение задачи: «Передаваемая в подпрограмму функция»

textual
Листинг программы
SortBubble(num,@IsGT);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5