Давай разбираться. Программа работает так:
1. `F(9)` - начинаем с 9.
- Сначала вызываем `F(5)` (9-4=5).
- В `F(5)` вызываем `F(1)` (5-4=1), который печатает `1`, затем `F(1 div 3)` - это `F(0)`, но `F(0)` не печатает, так как `n<=0`.
- Затем печатаем `5`.
- После `F(5)` вызываем `F(5 div 3)` - это `F(1)`, печатаем `1` снова.
- После первого вызова `F(5)`, возвращаемся к `F(9)`, печатаем `9`.
- Затем вызываем `F(9 div 3)` - это `F(3)`.
- В `F(3)`, сначала вызываем `F(-1)` (3-4=-1), который не печатает, потому что `n<=0`.
- Печатаем `3`.
- Затем `F(3 div 3)` - это `F(1)`, печатаем `1`.
Итак, последовательность действий приводит к выводу: `1 5 1 9 3 1`. Всё дело в рекурсивных вызовах с уменьшением и делением числа.