По-моему, смешиваются две отдельных вопроса: техническое умение строить циклы и все остальное, где можно ошибиться.
Если вы говорите про свою задачу, то в случае стандартного сорта и реализации метода подсчетом ошибиться крайне тяжело. "Техническое " умение строить циклы формально состоит из 2 вещей
1.Выделение тела цикла - повторяющейся последовательности действий.
2.Нахождение условий выхода в из него.
Если вы НЕ ИМЕЕТЕ готового алгоритма, то вы ДОЛЖНЫ построить его на основе понимания задачи , и перевести в инструкции целевого ЯП.
Вот в этом - люди и ошибаются,и ЭТО естественно, потому что зависит от ЗАДАЧИ, и СПОСОБНОСТЕЙ человека.
Это для нормальных людей , но не коровцев