Hola gonza22salta.
Ademas de los muy buenos enlaces y código que te proporcionó
Nelson, te agrego la interpretación que pude darle al enunciado:
Código Delphi
[-]
program Project2; {$APPTYPE CONSOLE}
uses SysUtils;
const
MAXLST = 50;
var
v: array[1..MAXLST] of Integer;
c, i, m: Integer;
des, has: Integer;
begin
Randomize;
for i:= 1 to MAXLST do v[i]:= Random(9)+1;
Writeln('Lista:');
for i:= 1 to MAXLST do Write(v[i],' ');
m := 0;
c := 0;
has:= 0;
des:= 0;
for i:= 2 to MAXLST do
begin
if v[i-1] < v[i] then
begin
Inc(c);
if c > m then begin
m := c;
des:= c;
has:= i;
end
end
else
c:= 0;
end;
Writeln(#10,#10,'Mayor sublista ordenada:');
for i:= has-des to has do Write(v[i],' ');
Readln;
end.
(*) De este modo, existiendo dos sublistas del mismo tamaño mostrará la primera en órden de aparición. Si deseas obtener la última cambia el condicional por:
Saludos