без генераторов, но учтите, что все решения здесь используют рекурсию.

смотрел похожие посты на форуме, но все они предлагают использоватьitertools.product но мне было интересно, если это можно решить без его использования.

Я хочу напечатать все комбинации результатов для N бросков монеты. Это можно сделать, если N известно заранее. Таким образом, число вложенных циклов будет просто N. Но если N нужно определять динамически (input() функция), то я застрял в реализации его в коде. На простом английском языке легко представить, что число циклов for пропорционально N, но как мне это реализовать? Должен ли я использовать лямбды или рекурсию? Ниже приведен пример кода для N = 4.

results = ["H", "T"]
outcomes = []
for l1 in results:
    for l2 in results:
        for l3 in results:
            for l4 in results:
                outcomes.append(l1+l2+l3+l4)

for o in outcomes:
    print(o)  

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос