Bonsoir, merci de vos exemple mais cela ne m'aide pas du tout !
J'ai besoin d'info sur comment fonctionne la récursivité d'une procédure.
Dites-moi, qu'est ce que la récursivité ?
Comment ça marche ?
Concrètement ça fais quoi ?
Voir mon message.
Les variables, comment ça marche dans ces cas là ?
Moi je croyais que ça marchait comme ça en gros:!
Est ce que ce code:
Code : Tout sélectionner
Procedure MaProcedure()
A + 1 ; A (01) ici vaudra 1, 2
Delay(100)
If A < 3
MaProcedure()
EndIf
EndProcedure
Est égale à ce code ?:
Code : Tout sélectionner
Procedure MaProcedure()
A + 1 ; A (01) ici vaudra 1, 2
Delay(100)
If A < 3
Procedure MaProcedure()
A + 1 ; A (02) ici vaudra 1, 2
Delay(100)
If A < 3
Procedure MaProcedure()
A + 1 ; A (03) ici vaudra 1, 2
Delay(100)
If A < 3
Procedure MaProcedure()
A + 1 ; A (04) ici vaudra 1, 2
Delay(100)
If A < 3
Procedure MaProcedure()
A + 1 ; A (05) ici vaudra 1, 2
Delay(100)
If A < 3
; Etc.
EndIf
EndProcedure
EndIf
EndProcedure
EndIf
EndProcedure
EndIf
EndProcedure
EndIf
EndProcedure
En procèdent comme ceci, effectivement il y à boucle infinie...
Ce qui m’intéresse de savoir, est ce que chaque variable est bien indépendante ?
Chaque récursivité à bien ces propres variables et ne sont pas mélanger avec les autres ok ?
Donc avec ce code, j’obtiens une infinité de variable 'A' mais locale à chaque récursivité c'est bien ça ?
Code : Tout sélectionner
Procedure MaProcedure()
A + 1 ; A (01) ici vaudra 1, 2
Delay(100)
If A < 3
MaProcedure()
EndIf
EndProcedure
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.
PureBasic: 5.60 x64 Bits.