Les tableaux
Résolu
Synerz
Messages postés
1234
Date d'inscription
Statut
Membre
Dernière intervention
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je travaille sur du Perl en ce moment puisque j'en ai besoin pour mes futurs cours mais j'ai une question.
Est ce que "Foreach" fonctionne pour afficher un tableau à plusieurs entrés ? Exemple
Quand j’exécute ce programme j'ai cette erreur : "ARRAY(0xe5b358)ARRAY(0xe5b508)ARRAY(0xd047f8)"
Il y a surement une autre façon de faire non ?
Merci d'avance
Je travaille sur du Perl en ce moment puisque j'en ai besoin pour mes futurs cours mais j'ai une question.
Est ce que "Foreach" fonctionne pour afficher un tableau à plusieurs entrés ? Exemple
use strict; use warnings; my @noms = ( [ "fred", "barney" ], [ "george", "jane", "elroy" ], [ "homer", "marge", "bart" ], ); foreach my $n (@noms) { print $n; } <>
Quand j’exécute ce programme j'ai cette erreur : "ARRAY(0xe5b358)ARRAY(0xe5b508)ARRAY(0xd047f8)"
Il y a surement une autre façon de faire non ?
Merci d'avance
A voir également:
- Les tableaux
- Tableaux croisés dynamiques - Guide
- Fusionner deux tableaux excel - Guide
- Les tableaux word - Guide
- Barbara veut calculer automatiquement son budget dans un tableau. citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). - Forum Musique / Radio / Clip
- Triez le tableau pour que les villes les plus peuplées soient en haut - Guide
1 réponse
Salut,
Désolé de la réponse tardive.
Tu as un tableau qui contient 3 tableaux. Les 3 éléments qui sont affichés par ta boucle sont des références à ces tableaux.
Pour afficher les tableaux pointés par ces références, il suffit d'utiliser l'opérateur @ pour les déréférencer et de faire un foreach sur chaque tableau.
Comme cela :
Alternativement, tu peux installer List::Flatten avec CPAN, et tu pourras "aplatir" une liste qu'elle contienne ou pas des tableaux dans tout ou partie de ses éléments (ou List::Flatten::Recursive si tu peux avoir des tableaux de tableaux de tableaux...).
Dal
Désolé de la réponse tardive.
Tu as un tableau qui contient 3 tableaux. Les 3 éléments qui sont affichés par ta boucle sont des références à ces tableaux.
Pour afficher les tableaux pointés par ces références, il suffit d'utiliser l'opérateur @ pour les déréférencer et de faire un foreach sur chaque tableau.
Comme cela :
#!/usr/bin/perl use strict; use warnings; my @noms = ( [ "fred", "barney" ], [ "george", "jane", "elroy" ], [ "homer", "marge", "bart" ], ); foreach my $n (@noms) { foreach my $o (@$n) { print $o . "\n"; } }
Alternativement, tu peux installer List::Flatten avec CPAN, et tu pourras "aplatir" une liste qu'elle contienne ou pas des tableaux dans tout ou partie de ses éléments (ou List::Flatten::Recursive si tu peux avoir des tableaux de tableaux de tableaux...).
Dal