Будем выполнять действия за программой:
- пишется звёздочка
10 " alt=" n=20>10 " align="absmiddle" class="latex-formula">
- пишется звёздочка
10 " alt=" n=18>10 " align="absmiddle" class="latex-formula">
Мысленно печатаем в голове:
(звёздочка и в скобках после -
)
Почему напечатается при n=10? Потому что условие после того, как печатается звёздочка.
Итак, у нас есть 6 звёздочек. Продолжаем с пункта выполнения
, но звёздочка уже напечаталась 6-ая!)
10 " alt=" n=10>10 " align="absmiddle" class="latex-formula"> - ложь, выполняется ![G(10) G(10)](https://tex.z-dn.net/?f=+G%2810%29+)
![G(10) G(10)](https://tex.z-dn.net/?f=+G%2810%29+)
Печатается ** (уже 6 + ещё 2)
1 " alt=" n=10>1 " align="absmiddle" class="latex-formula"> - правда, значит выполняется ![F(7) F(7)](https://tex.z-dn.net/?f=+F%287%29+)
- опять будет выполняться
, так как
и в дальнейшем только уменьшается. НО! При каждом выполнении F печатается ещё одна звёздочка, независимо от условий.
Итого при каждом выполнении G будет выводится 3 звёздочки (2 от G и 1 от F)
![***(10) ***(7) ***(4) ***(1) ***(10) ***(7) ***(4) ***(1)](https://tex.z-dn.net/?f=+%2A%2A%2A%2810%29+%2A%2A%2A%287%29+%2A%2A%2A%284%29+%2A%2A%2A%281%29+)
И на последнем выполнении напечатается 2 звёздочки, а условие не выполнится. После этого выполнение закончится.
Итого 6 + 9 + 2= 17
Надеюсь понятно объяснил, рекурсия не самая простая тема