Здравствуйте, Pzz, Вы писали:
Pzz>Ну не знаю. Я так не думаю. Скорее, я думаю, как в первом примере. Если мне надо заколотить дцать гвоздей, я возьму молоток и заколочу их по очереди, а не заколочу один и передам остаток работы себе, рекурсивно вызванному.
наверное вы
• запоминаете номер текущего гвоздя
• проверяете, что этот номер не больше -дцати
• отсчитываете нужный гвоздь (причём считаете и уже забитые гвозди!)
• после приколачивания прибавляете к номеру гвоздя единицу
Думаю, всё таки нет. Вы берёте пачку гвоздей. Если пачка пуста, процесс завершаете. Иначе берёте первый гвоздь, приколачиваете и с оставшимися возвращаетесь в начало (рекурсия!).
Всё дело в привычке. Вы уже подсознательно воспринимаете
for(int i = 0...) за прохождение по
всем элементам. И не обращаете внимания сколько фигни с точки зрения человека происходит.