Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1785 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  Problème de compréhension d'un bout de code

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de compréhension d'un bout de code

n°2186946
x1fr
Posté le 22-04-2013 à 13:23:31  profilanswer
 

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 :
 

Code :
  1. redo if ($dungeon->{'connect'}{$connect}++);


 
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
mood
Publicité
Posté le 22-04-2013 à 13:23:31  profilanswer
 

n°2187008
gilou
Modérateur
Modzilla
Posté le 22-04-2013 à 16:32:39  profilanswer
 

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) :D

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.  
 
- Si la clé n'existe pas, on continue  
- Si elle existe, elle est incrémentée et le redo est exécuté.

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+,

Message cité 1 fois
Message édité par gilou le 22-04-2013 à 16:38:17

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2187012
x1fr
Posté le 22-04-2013 à 16:59:49  profilanswer
 

gilou a écrit :

Bonjour,
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) :D


 
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  :pt1cable:  
 
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  
- 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+,


 
Ok je vais tester ça, merci bcp.


Message édité par x1fr le 22-04-2013 à 17:00:20

---------------
Origin / PSN / Steam / Uplay : x1fr - bnet : Fab#2717
n°2187017
gilou
Modérateur
Modzilla
Posté le 22-04-2013 à 17:15:12  profilanswer
 

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+,


Message édité par gilou le 22-04-2013 à 17:15:45

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Problème de compréhension d'un bout de code

 

Sujets relatifs
Probleme avec onsubmit et window.location.hrefprobleme fuite de memoire
Zend Frameword - MVC - Problème avec bibliothèque FPDFPetit probleme de batch
Problème d'accent dans un mail.php uniquement les requêtes sql[AJAX] problème d'etat...
Sécuriser son code source PHP avec Bcompiler ou un autre encodeurModifier code javascript avec prompt
Problème de mise en page selon le navigateurmysql C++ code blocks
Plus de sujets relatifs à : Problème de compréhension d'un bout de code


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR