Bon, j'ai eu du mal avec ça tout le week-end, et j'ai reçu beaucoup d'aide, mais je ne comprends toujours pas. Voici mon code jusqu'à présent: ce que je veux faire est de construire quelques matrices à partir de l'entrée de l'utilisateur. Finalement, je veux les multiplier. Une autre histoire.Comment puis-je construire une matrice 2D à partir d'une entrée standard en Perl?
entréeest la suivante
1 2 2 4
4 5 6 6
1 2 2 3
1 2 2 3
sub makeMatrix {
my ($input) = @_;
my @mat;
while (<$input>) {
if ($input eq ""){
print "it's blank\n";
return;
}
else{
push @mat, [ split ];
}
return \@mat;
}
}
my @a =();
while($a = <>) {
chomp $a;
push @a,($a);
}
@matrices;
push @mat, (makeMatrix(@a));
foreach $input (@matrices){
print "input was $input\n";
}
Pourquoi pas ce travail? Pourquoi ne crée-t-il pas un tableau de matrices dans @matrices
? Est-ce l'instruction return
dans le sous-programme? Mon but est d'avoir deux matrices dans le tableau des matrices. Merci pour votre aide.
Vous avez déjà posé cette question: http://stackoverflow.com/questions/1581330/how-do-i-build-a-2d-matrix -using-stdin-in-perl –
ouais mais je ne peux pas le faire fonctionner. Je ne saisis pas l'idée. Je veux vraiment le comprendre. – Mawnster
Il semble que vous devez d'abord étudier les bases de la langue. Avez-vous déjà un livre? –