Bonjour,
Nous voyons en cours actuellement la récursivité, je me suis donc essayé à l'implémenter en Pascal avec FreePascal. J'ai tenté d'implémenter le tri rapide ou QuickSort mais je trouvais toujours à l'execution ce code-ci : erreur de segmentation.
Après plusieurs recherches, je ne voyais pas où mon algorithme buggait, j'ai donc tenté d'implémenter une fonction plus simple utilisant la récursivité comme la fonction factorielle. Voici mon code :
Et à l'éxecution, même problème... erreur de segmentation. Je me demande alors si mon code a un problème ? Si cela vient de Linux ? du compilateur FreePascal ? Bref... Pourquoi je n'arrive pas à exécuter mon programme récursif ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 program factrecursif; function fact(x:Integer):Integer; begin if (x=1) and (x=0) then fact:=1 else fact:=x*fact(x-1) end; var x:Integer; begin writeln('combien?'); readln(x); writeln(fact(x)) end.
En vous remerciant par avant et de m'avoir lu.
Cordialement,
Jerem'
Partager