# perl -pe c'est plus ou moui l'équivalent de while($_ = <STDIN>)# qu'on peut simplement écrire (while <STDIN>)# ou en plus court (while(<>)# donc on reprend# #while(<STDIN>) { # pour toute les ligne pas present (-pe)$c+=# on ajoute à c - bouh c'est pas déclaré par défaut c'est 0(#je rajoute une parenthèses pour mieux suivre /\+/# si y'a un + dans la ligne &# bitwise and pour économiser un caractère et pas écrire &&!$b# not $b ($b représente un état (est-ce que y'avait un + sur la ligne précédente...))?# donc si l'évaluation de y'a un + et b == false (ou indéfini)$b=1# $b prend la valeur 1 (et on renvoi 1):$b=/\+/,0# $b prend true si y'a un plus, et on renvoi 0... GRUIIIIK#} # pas présent fin de la boucle -pe }{# définition du bloc END peut aussi s'écrire END{print$c# on appel print avec comme paramètre $c... aurait du s'écrire print "$c\n";
bref à part pour le code golf je déconseille fortement ce code
sinon d'un point de vu algorithmique
on ajoute 1 au compteur si y'a un + sur la ligne et que sur la ligne précédente y'avait pas de +
puis on affiche le compteur.
et si on veut faire mois incantation lovecraftienne ça donne a peu près ça (de tête j'ai pas testé)
[^] # Re: Quel est le besoin ?
Posté par fearan . En réponse au message Recherche commande. Évalué à 3.
bon c'est parti pour l'explication de code ;)
déjà on va le segmenter et le commenter
bref à part pour le code golf je déconseille fortement ce code
sinon d'un point de vu algorithmique
on ajoute 1 au compteur si y'a un + sur la ligne et que sur la ligne précédente y'avait pas de +
puis on affiche le compteur.
et si on veut faire mois incantation lovecraftienne ça donne a peu près ça (de tête j'ai pas testé)
Il ne faut pas décorner les boeufs avant d'avoir semé le vent