Având în vedere un fragment de cod, explicați scopul și logica acestuia, pas cu pas.
factorial(n) def:
    dacă n == 0:
        returnare 1
    altfel:
        returnare n * factorial(n - 1)
1. Definiți o funcție numită „factorială” cu un singur parametru „n” pentru numărul de intrare.
2. Verificați dacă „n” este egal cu 0. Dacă da, cazul de bază este îndeplinit, iar funcția returnează 1.
3. Dacă „n” nu este egal cu 0, funcția se apelează recursiv cu argumentul „n - 1”.
4. Funcția continuă să se apeleze până când este îndeplinit cazul de bază, apoi recursivitatea începe să se rezolve, înmulțind fiecare valoare a lui 'n' cu apelul recursiv rezolvat.
5. Rezultatul final este factorialul numărului de intrare „n”.