Source: https://deptinfo.cnam.fr/Enseignement/CycleA/APA/nfa032/docs/corriges-recursivite-1.pdf