le meilleur moyen pour ramener une valeur ? [perl] - Perl - Programmation
Marsh Posté le 30-06-2010 à 19:20:16
Si c'est un hash que tu veux obtenir, je ferais:
my %test;
map { $test{$_} = 1 } 0..5, map { $test{$_} = 2 } 6..10;
mais n'est ce pas plutôt d'une fonction dont tu aurais besoin?
A+,
Marsh Posté le 01-07-2010 à 18:57:27
Merci pour le map ça marche très bien
Dans quel cas une fonction pourrait être utile ?
En fait, je souhaite créer un tableau double entrée du style :
Poids / Pays France USA
jusqu'à 5kg 1 9
Jusqu'à 10kg 2 10
mais l'une de mes valeur clé étant un poids (donc pas forcément entier) je pense qu'il va falloir que je passe par des if .. elsif.
Marsh Posté le 01-07-2010 à 19:51:38
Donc en fait, tu veux plutôt une fonction qui prend en entrée une valeur, et renvoie en retour un hash.
Je vais bouffer, et je te pond une réponse plus complète.
A+,
Marsh Posté le 01-07-2010 à 21:39:15
Tu peux t'inspirer de ce petit script, que tu vas appeller avec: perl myscript.pl XX
ou myscript.pl est le nom du fichier du script et XX un nombre à tester pour le poids.
Code :
|
Il ne te reste plus ensuite qu'à adapter à tes besoins.
A+,
Marsh Posté le 02-07-2010 à 18:55:04
Génial ! Merci.
je ne connaissais pas le module Switch mais c'est très pratique.
Juste une question : le switch(shift) c'est parce que l'argument passé en paramètre de la fonction est un tableau ?
Marsh Posté le 02-07-2010 à 19:16:03
C'est juste équivalent à
Code :
|
mais ça évite de définir une variable explicite inutile ($toto ici);
A+,
Marsh Posté le 30-06-2010 à 17:11:09
Salut à tous,
je débute en perl et je cherche le meilleur moyen de faire un chose simple : une correspondance de valeur.
En gros de 0 à 5, j'aimerais que ça me retourne 1; de 6 à 10 me retourne 2 etc..
J'ai pensé à un tableau indicé mais je n'arrive pas à mes fins :
Est-ce la bonne méthode pour ce genre de manipulation de données ?
---------------
Mon topic Achat/ventes : http://forum.hardware.fr/hfr/Achat [...] 2496_1.htm