SUITE LOGIQUE

webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 - 17 août 2008 à 18:25
FaustXVI Messages postés 5 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 juillet 2009 - 26 oct. 2008 à 00:16
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47627-suite-logique

FaustXVI Messages postés 5 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 juillet 2009
26 oct. 2008 à 00:16
Salut,

je reprendrai les idées des autres en disant que tu aurait au minimum put faire une fonction...
Mais surtout je pense que tu aurai pu optimiser ton code!!

Remplacer :

# $nb = 0; // on initialise le nombre d'occurence
# for($j=0;$j<=$l;$j++) { // pour chaque lettre de la ligne precedente
# if($j===0) { // si on est au premier caractere c'est forcement une premiere occurence
# $nb++; // on incremente
# } else if($j !==$l ....

par

$nb = 1;
for($j=1;$j<=$l;$j++) {
if($j !==$l...

tu evitera ainsi un test par tour et tu fera un tour de moins.

Je sais que ca parrai que dalle comme ca mais si tu n'optimise pas des codes aussi simple ca risque de devenir une catastrophe quand on arrivera à des codes plus complexes!

Enfin derniere chose, essaie de mettre des noms de variable explicites!!
$l devrait etre $longueur au minimum voir $longueurChaineDepart

Je met 5/10 parceque ca a quand meme le merite de faire ce que c'est sensé faire.

Bonne conitnuation
thedeejay Messages postés 74 Date d'inscription dimanche 2 avril 2006 Statut Membre Dernière intervention 23 juin 2010
20 août 2008 à 19:28
héhé...
c'est une epreuve de newbiecontest...
The Red Man Messages postés 111 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 13 juin 2010 2
19 août 2008 à 15:03
lol ! j'ai déjà eu a faire ça en colle de JAVA (ou c'était juste un exo de td je sais plus ^^) en 1ere année de DUT. Mais effectivement tu aurais du faire une méthode ou même mieux une classe static Suites dans laquelle tu écris toutes les méthodes correspondantes au Suites. Ou encore mieux, une interface Suites ainsi que toutes les classes SuitesX (Avec X nom de la suite) implémentant cette classe.
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
18 août 2008 à 18:30
ah mais ce n'est pas ce que je dis, je dis juste que ce n'est pas élégant :p
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
18 août 2008 à 18:23
On peut changer les globales en variables statiques dans la fonction... C'est pas la fin du monde...
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
18 août 2008 à 18:10
(Mais merci pour le nom, je me le suis toujours demandé !)
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
18 août 2008 à 18:10
Effectivement, en faire une fonction récursive est plutôt malin, autant pour moi.
Par contre pour moi, il n'y a ABSOLUMENT rien d'élégant à utiliser une variable globale ;)
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
18 août 2008 à 17:46
Salut,

Il s'agit de la suite de Conway :
http://fr.wikipedia.org/wiki/Suite_de_Conway#cite_ref-0

Sur l'article Wikipedia, on trouve même comment faire ça en PHP... Avec une fonction, ce qui est très très important, justement, pour l'algo, puisqe sans, on ne peut pas faire de récursivité... La source présentée dans l'article n'affiche qu'une seule ligne définie de la suite, mais avec deux lignes de code en plus (dont une pour une variable statique) on obtient quelque chose de très satisfaisant et en plus de très élégant.
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
17 août 2008 à 18:27
Pouarf non, c'était simplement l'algorithme qu'il faut retenir, vu qu'à la base ça ne sert à rien :p
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
17 août 2008 à 18:25
T'aurais pu faire une fonction sérieux ^^
Rejoignez-nous