Другие языки программирования и технологии

Кто омжет написать пподпрограмму на паскале и чем программа отличается от подпрограммы ?

Нужно написать подпрограмму нахождения максимального элемента ,болел на лекции и практики не был ,теперь не знаю как сделать :(
Программа и подпрограмма будут выглядеть примерно так:
==================================================

program MaxElemArray;

{ Подпрограмма (функция) нахождения максимального
* элемента массива. Принимает массив, возвращает
* целое число со значением максимального элемента }
function Max(A: array of Integer): Integer;
var
I: Integer;
begin
{ Встроенная переменная, возвращающая
* результат выполнения функции }
Result := 0;
{ Цикл поиска максимального элемента }
for I := 0 to Length(A) do
begin
{ Если текущий элемент массива больше максимального }
if A[ I ] > Result then
begin
{ Присвоить его значение выходной переменной }
Result := A[ I ];
end;
end;
end;

{ Блок объявлений переменных программы }
var
{ Объявление массива на 20 элементов (с 0 по 19) }
A: array[0..19] of Integer;
I: Integer;
R: Integer;
{ Блок операторов (тело) программы }
begin
{ Служебная функция для корректного вызова Random }
Randomize;
Write('Random array = ');
{ Цикл заполнения массива случайными числами
* и его поэлементный вывод на консоль (для наглядности) }
for I := 0 to Length(A) - 1 do
begin
{ Вызов встроенной подпрограммы, генерирующей
* случайное число в диапазоне от 0 до 100 }
A := Random(100);
{ Вывод на консоль I элемента массива и пробела }
Write(A[ I ], ' ');
end;
{ Перенос строки консоли }
WriteLn;
{ Вызов подпрограммы нахождения максимального
* элемента массива (см. выше) : передаем массив, получаем число }
R := Max(A);
{ Выводим значение максимального элемента на консоль }
WriteLn('Maximum = ', R);
{ Останов программы в ожидании нажатия клавиши }
ReadLn;
end.
Алексей Симоненков
Алексей Симоненков
7 465
Лучший ответ
Напишу за 100 руб
Подпрограмма - код, выполняющий некоторые действия, но ничего не возвращающий, как это происходит с функциями.

Procedure Maxi;
Var i : integer;
Begin
For i:=1 to (Длинна массива) Do If M[ i ]>Max Then Max:=M[ i ]
End;

Вот так наверно!