Задача 19 Урок 15

Задача 19 Урок 15:

Дан массив длиной N (где 10≤N В качестве ответа (если отрезок найден) получите его начальный и конечных индекс - m и p ( 1≤m

Указание: Проверку массива на соответствие условиям задачи вынести в подпрограмму (процедуру, которая вычислит нужные индексы, если есть)
Подсказка: можно использовать функцию проверки отрезка в массиве из предыдущей задачи.

program u15z19;
type
  massiv = array[1..100] of integer;
var
  m: massiv;
  k,i,x,f,p,t,q: integer;

function f1 (m: massiv; a,b,c: integer): integer;
var
  z,j,q: integer;
begin
  for j:=1 to a do
  begin
    q:=0;
    for z:=b to c do    //проверка на отрезке
    begin
      if j=m[z] then
      q:=1;
    end;
      if q=0 then       //если не встретили число то выходим
        break;
   end;
   result:=q;
end;

procedure p1(var t,p,q,k,f :integer; m:massiv);
var i :integer;
begin
  t := 1;
  p := f;
  for i := low(m) to (high(m) - f) do
  begin
    q := f1(m,k,t,p);
    if q=1 then
    begin
      writeln('m = ', t, ' ', 'p = ', p);
      break;
    end
    else
    begin
      t := t + 1;
      p := p + 1;
    end;
  end;
end;

begin
  randomize();
  for i:=low(m) to high(m) do
  begin
    m[i] := random(100)+1;
    write (m[i], ' ');
  end;
  q:=1;
  writeln;
  writeln('Vvedite k');
  readln(k);
  writeln('Vvedite F');
  readln(f);
  p1(t,p,q,k,f,m);
  if q=0 then
    write ('No');
  readln();
end.