Показать сообщение отдельно
  #2  
Старый 10.02.2012, 11:25
Аватар для DelphiM0ZG
DelphiM0ZG DelphiM0ZG вне форума
Новичок
 
Регистрация: 22.10.2011
Сообщения: 62
Репутация: 666
По умолчанию

Подозреваю, что у Вас не работало по такой причине: Вы в самой программе массив объявили так:

Код:
a:array[1..100] of real;

А, поскольку в модуле уже есть объявление нового типа для массива, который Вы используете для передачи в процедуры, то нужно было написать так:

Код:
a: Real_array;

Дело всё в том, что Паскаль имеет такую особенность: Real_array и array[1..100] of real для него разные типы данных, хоть и физически представлены одинаково. Можно, конечно, привести массив a, имеющий тип array[1..100] of real, с помощью конструкции:

Код:
Real_array(a)

и попробовать передать процедуре (я не проверял). Ниже поправленный код программы (поправлял на Delphi 7).

Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  Unit1; // положил его в каталог с программой

var
  n,i: integer;
  a: Real_array; // так объявил массив
  k: real;
  
begin
  writeln('Input n ');
  readln(n);
  writeln('Input Array');
  for i := 1 to n do readln(a[i]);
  Array_out(n,a);
  Sort_array(n,a);
  Array_out(n,a);
  readln;
end.
__________________
Чем больше знаешь, тем сильнее осознаёшь, что знаешь гораздо меньше, чем не знаешь!..
Ответить с цитированием