Поиск элементов в массиве паскаль

Поиск элементов в массиве паскаль
Нужно в массиве найти ПЕРВОЕ вхождение элементов (не одного элемента, а многих) и вернуть индекс первого найденное совпадение.
Например:
В массиве 1,2,2,6,6,7,1,1,1,7,1 найти индекс, с которого начинается 1, 1, 1 -> результат: 6
Как реализовать функцию?

  • Заводите массив с 1,1,1 и поштучно сравниваете его элементы с каждой новой позиции.
  • Нужно найти первое вхождение [1, 1, 1], значит:

    Index := 1;
    while (Index < ArraySize - 2) and Not( (Arr[Index] = 1) and (Arr[Index + 1] = 1) and (Arr[Index + 2] = 1) ) do
      Inc(Index);
    if (Arr[Index] = 1) and (Arr[Index + 1] = 1) and (Arr[Index + 2] = 1) then
      WriteLn(Index)
    else
      WriteLn('No find.');

  • Школьники тут не сего делать это вообще псевдо програмирование) Index := 1;
    while (Index < ArraySize - 2) and Not( (Arr[Index] = 1) and (Arr[Index + 1] = 1) and (Arr[Index + 2] = 1) ) do
    Inc(Index);
    if (Arr[Index] = 1) and (Arr[Index + 1] = 1) and (Arr[Index + 2] = 1) then
    WriteLn(Index)
    else
    WriteLn('No find.');