Я пытался выяснить, как реализовать рекурсивную функцию всего с 3 параметрами: Tower (Disk, from, to). Я провел много исследований в Google. Все результаты были получены с помощью четырех параметров рекурсивной функции (диск, a, b, c). Любая помощь будет оценена.
EDIT:
typedef void (*towersActionFn)(unsigned short fromPost, unsigned short endPost);
void solveTowers(unsigned short nDisks, unsigned short start, unsigned short end, towersActionFn f);
the towersActionFn используется только для отображения решения.