Page 1 sur 1
probleme boucle
Posté : 29 juin 2005, 17:33
par laTulipe
bonjour,
je voudrais faire une boucle qui affiche l'alphabet.
si je fais
for($i=a;$i<=z;i++){echo $i;}
j'ai bien l'alphabet mais il continue apres z et m'affiche n'importe quoi
???
Posté : 29 juin 2005, 17:37
par ouckileou
j'avais eu le même problème pour un pendu
je ne sais pas si on peut le faire directement, il me semblait avoir réussi une fois mais j'ai pas retrouvé comment faire
alors j'ai contourné comme ça :
$alpha = "a";
for ($cpt=1;$cpt<=26;$cpt++) {
echo $alpha;
$alpha++;
}
car effectivement le test ne fonctionnait pas
Posté : 29 juin 2005, 17:38
par VaN
chez moi le code ne marche pas, il affiche cette erreur carrément :
Parse error: parse error, unexpected T_INC, expecting ')' in c:\program files\easyphp1-7\www\extranet\test\alphabet.php on line 10
Posté : 29 juin 2005, 17:40
par ouckileou
c'est vrai en plus il y a une erreur
ce serait plutôt ça :
for($i="a";$i<="z";i++){echo $i;}
Posté : 29 juin 2005, 17:40
par laTulipe
j'ai oublie le $ dans $i++
Posté : 29 juin 2005, 17:42
par laTulipe
j'ai le meme pb avec ou sans les ""
Posté : 29 juin 2005, 17:43
par ouckileou
sinon y'a ça :
for($alpha='a';$alpha!='aa';$alpha++) {
echo $alpha."-";
}
petite variante

Posté : 29 juin 2005, 17:46
par ouckileou
et enfin (trouvé sur le net)
for ($i=ord("A");$i<=ord("Z");$i++) {
echo(chr($i)."<br>");
}
on aurait du y penser au code ASCII

j'ai juste changé '<' par '<=' au code de base pour avoir le Z
=>
http://www.asp-php.net/ressources/bouts ... php?id=197
Posté : 29 juin 2005, 17:48
par zeus
sachant que les lettres minuscules sont comprises entre 97 et 122 dans la table ASCII, on peut faire
for ($i = 97; $i <= 122; $i++)
echo chr($i);
Posté : 29 juin 2005, 17:48
par zeus
grillé sur la vitesse !!!
bien joué
ouckileou
Posté : 29 juin 2005, 17:49
par ouckileou
ouais plus rapide, mais j''ai copié...
par contre pourquoi abs() ?

Posté : 29 juin 2005, 17:52
par zeus
parce que j'ai récupérer ce truc dans un code de génération de code numérique depuis une chaine. Dans l'algo, j'enlevais 96 au code ASCII de la lettre et si je récupère la valeur absolue du code obtenu, je tombe toujours sur un chiffre, que la lettre soit minuscule ou majuscule
mais j'ai remplacé entre temps par la bonne fonction
Posté : 29 juin 2005, 17:52
par laTulipe
merci les gars
a+
Posté : 29 juin 2005, 17:53
par ouckileou
ok je comprend
merci d'avoir répondu parcequ'un moment j'ai cru avoir rêvé

Posté : 29 juin 2005, 17:55
par zeus
@
laTulipe : [RESOLU]
@
ouckileou : non non, c'était un mauvais copier/coller, tu n'as pas rever