Recursivité - PHP - Programmation
Marsh Posté le 15-03-2004 à 11:22:16
Code :
|
je sais pas si c'est une erreur de saisie mais cette partie ne fait pas du tout ce qu'il y a marqué en commentaire.
Donc en admettant que c'est plutot
Code :
|
Bon bin même comme ça je comprends pas l'utilité de ta fonction. Parce qu'en admettant que tout marche comme tu veux sur le même exemple si j'envoie un echo CptVide($cell, 1, 4, 0); il va me retourner 1 alors que ma case 1 était vide.
Donc à mon avis tu t'es compliqué la vie pour rien et la récursivité est inutile.
Par ailleurs c'est pabo de nommer les paramètres d'un fonction de la même façon que les variables de ton script, en tout cas c'est au moins un bon moyen de si paumer!
Marsh Posté le 15-03-2004 à 11:45:27
Oui c'est return $cpt.
Mais le problème c'est que ça me retourne rien.
Alors qu'en faisant des echo je vois bien que ça passe au bon endroit.
Je n'appel cette fonction que si la cellule est pleine.
SI elle est vide elle m'interesse pas, car elle a intéressée la première cellule pleine à gauche.
et on ne peut pas commencer par une cellule vide.
Marsh Posté le 15-03-2004 à 12:38:36
mais je comprends toujours pas pourquoi tu as besoin que ça soit récursif...
Tu as une fonction qui est appelé pour une case donnée et qui doit s'arreter à la première case non vide suivant la case donnée.
Donc tu prends ce que t'as donné art_dupond, tu corriges toutes les fautes de synthaxe ( ) et ça fait ce que tu veux!!!
Marsh Posté le 15-03-2004 à 13:46:58
Oui, pas besoin de recursivité.
Amalgame de souvenir de cours sur les arbres
Par contre ça peux marcher avec la recursivité (mais c'est moins performant)
Ce que j'aurais voulu savoir (pas pour cette fois ) c'est pourquoi le return semble ne pas fonctionner?
Merci de votre aide.
Marsh Posté le 15-03-2004 à 17:07:36
Simple supposition :
L'appel récursif se trouvant plus bas que le return et n'étant pas suivit d'un autre return, il n'y a pas de retour de valeur pour la première éxecution (la condition du if est fausse => pas de return => appel récursif => retour de l'appel => ? => fin fonction). Il devrait y avoir un return à la place de mon ? dans le schéma incompréhensible que je viens d'écrire
Marsh Posté le 15-03-2004 à 11:04:46
Salut,
j'essai de faire une fonction capable de compter le nombre de cellule vide à la suite d'une case valorisée.
Dans mon exemple la fonction devrait me retourner 2,
mais elle ne me retourne rien.
Je ne sais pas pourquoi?
Merci de votre aide.