Problème de compréhension d'un bout de code - Perl - Programmation
Marsh Posté le 22-04-2013 à 16:32:39
Bonjour,
Citation : Bon, passons sur le redo qui n'existe pas en java il me semble (que je n'avais d'ailleurs jamais vu dans un autre langage), je l'ai remplacé par un do{}while, je pense que ça fera l'affaire. |
Si c'est avec un do while, ça devrait coller. Perl a aussi des unless et until (bref des if not et while not, mais c'est plus lisible en un seul mot)
Citation : C'est la condition du if que je ne sais pas trop comment interpréter. De ce que j'en comprend : $dungeon est un objet qui contient une propriété connect qui est de type tableau associatif. Il cherche la clé $connect dans ce tableau. |
C'est plutôt
- Si la clé n'existe pas, on passe sa valeur a 1 et on continue
- Si elle existe, elle est incrémentée et le redo est exécuté.
A+,
Marsh Posté le 22-04-2013 à 16:59:49
gilou a écrit : Bonjour, |
Oui j'ai eu l'occasion de croiser des unless, du coup, n'étant pas habitué, à chaque fois c'est la gymnastique dans ma tête
Des fois il met aussi les instructions avant le if. Enfin bon, je pensais que ça allait être relativement pépère, mais au final sans connaitre perl y a un peu de boulot.
gilou a écrit : C'est plutôt |
Ok je vais tester ça, merci bcp.
Marsh Posté le 22-04-2013 à 17:15:12
Je voulais bien sur dire, Si la clé n'existe pas dans le hash, on crée son entrée dans le hash, on passe sa valeur a 1 et on continue.
Citation : à chaque fois c'est la gymnastique dans ma tête |
Ça rend pourtant le code bien plus lisible une fois qu'on y est habitué.
A+,
Marsh Posté le 22-04-2013 à 13:23:31
Bonjour,
J'essaye de convertir un code perl (en java en l’occurrence) issu de cette page :
http://donjon.bin.sh/fantasy/dungeon/about/
Et je bloque sur une ligne (je ne connais pas du tout ce langage), ligne 515 chez moi :
Bon, passons sur le redo qui n'existe pas en java il me semble (que je n'avais d'ailleurs jamais vu dans un autre langage), je l'ai remplacé par un do{}while, je pense que ça fera l'affaire.
C'est la condition du if que je ne sais pas trop comment interpréter. De ce que j'en comprend : $dungeon est un objet qui contient une propriété connect qui est de type tableau associatif. Il cherche la clé $connect dans ce tableau.
- Si la clé n'existe pas, on continue
- Si elle existe, elle est incrémentée et le redo est exécuté.
Si je pouvais avoir une confirmation sur mon interprétation ou on contraire me dire si ce n'est pas ça du tout SVP.
---------------
Origin / PSN / Steam / Uplay : x1fr - bnet : Fab#2717