1C-Code → Ошибки 1С → Индекс находится за границами массива
Сообщение платформы: Индекс находится за границами массива
Вы обратились к элементу по номеру, которого в коллекции нет. Индексы в 1С начинаются с нуля, поэтому у массива из пяти элементов последний номер — четвёртый.
Для Сч = 0 По Массив.Количество() Цикл // на последнем шаге вылет
Для Сч = 0 По Массив.Количество() - 1 Цикл // верно
Классика. В 1С граница цикла ВКЛЮЧАЕТСЯ, в отличие от многих языков, и последний шаг оказывается лишним.
Для Сч = 0 По Массив.Количество() - 1 Цикл
Массив.Удалить(Сч); // размер уменьшился, индексы сдвинулись
КонецЦикла;
Удалять надо с конца: Для Сч = Массив.Количество() - 1 По 0 Цикл с шагом −1. Тогда сдвиг не задевает ещё не пройденные элементы.
Первый = Массив[0]; // если ничего не нашлось — вылет
Там, где номер не нужен, берите Для Каждого Элемент Из Массив Цикл — у него выйти за границу нельзя в принципе. Индекс нужен редко: почти всегда это привычка из другого языка.
Проверить себя на практике. В тренажёре те же ошибки возникают на настоящем интерпретаторе языка 1С: сообщения дословно те же, что у платформы, но исправить их можно сразу в браузере, без установки и без риска для рабочей базы.