В Прологе типичным способом реализации итерации является рекурсия:
print(0, _) :- !.
print(_, []).
print(N, [H|T]) :- write(H), nl, N1 is N - 1, print(N1, T).
Если мы достигли нуля или имеем пустой список, ничего не делаем. Если мы должны что-то сделать, напечатайте первый элемент в списке, вычислите новый N
и рекурсивно вызовите себя.
Вырезать (!
) в первом предложении необходимо, иначе нам понадобится условие для N
в последнем.