program FindMaxIntegerIndex; uses crt; var ArrayOfInteger : array of Integer; ArrayCounter : Integer; ArraySize : Integer = 0; MaxIntegerIndex : Integer = 1; UserAnswer : Char; begin clrscr; repeat write('Введие размер массива: '); readln(ArraySize); if (ArraySize <= 0) then begin write('Размер не может быть отрицательным или нулевым! (нажмите любую кнопку)'); readkey(); clrscr; end until(ArraySize > 0); { Это не будет работать в Turbo Pascal, потребуется записывать элементы } { массива через указатели! } setLength(ArrayOfInteger, ArraySize); write('Хотите ввести элементы массива вручную (y\n)? '); readln(UserAnswer); if (UserAnswer = 'y') or (UserAnswer = 'Y') then begin for ArrayCounter := 1 to Length(ArrayOfInteger) do begin write('Введите ', ArrayCounter, 'й элемент: '); readln(ArrayOfInteger[ArrayCounter]); end; end else begin randomize(); for ArrayCounter := 1 to Length(ArrayOfInteger) do begin ArrayOfInteger[ArrayCounter] := random(100); end; end; clrscr; writeln('Массив целых чисел: '); for ArrayCounter := 1 to Length(ArrayOfInteger) do begin writeln(ArrayCounter, 'й элемент: ', ArrayOfInteger[ArrayCounter]); if (ArrayOfInteger[ArrayCounter] > ArrayOfInteger[MaxIntegerIndex]) then MaxIntegerIndex := ArrayCounter; end; writeln('Индекс первого максимального элемента массива: ', MaxIntegerIndex); end.