1, 2, 4
y 2
la salida será A B D B
.
NOTA: Use el operador ..
para construir un vector con las letras:
@a = 'A'..'Z' # A B C D E F G H I J K L M N O P Q R S T U V W X Y ZLa siguiente sesión con el depurador muestra algunos de los problemas que pueden surgir asi como algunas de las posibles soluciones:
lhp@nereida:~/Lperl/src$ perl -wde 0 main::(-e:1): 0 DB<1> !!cat prueba1.txt 12 23 3 4 2 1 DB<2> open $F, "prueba1.txt" DB<3> @a = <$F> DB<4> @L = 'A'..'Z' DB<5> x @L[@a] # Mmm... no es exactamente lo que queremos 0 'M' 1 'X' 2 'D' 3 'E' 4 'C' 5 'B' DB<6> p scalar(@L) 26 DB<7> @L[1..26] = 'A'..'Z' DB<8> x @L[@a] 0 'L' 1 'W' 2 'C' 3 'D' 4 'B' 5 'A'Explique la siguiente conducta del depurador:
main::(-e:1): 0 DB<1> print (undef, 'A'..'Z')[@ARGV] syntax error at (eval 5)[/opt/local/lib/perl5/5.8.9/perl5db.pl:638] line 2, near ")[" DB<2> print ((undef, 'A'..'Z')[@ARGV]) DCBA
Casiano Rodríguez León