Buenas, tengo un problema con la función sort, y es que solo ordena las primeras cifras de un número, busqué en la documentación de perl, pero viene todo en inglés y no entiendo nada. Tengo este código:
#!/usr/bin/perl
use warnings;
use strict;
my @array = (5, 4, 1, 3, 7, 6);
@array = sort @array;
print $array[0] . "\n";
print $array[1] . "\n";
print $array[2] . "\n";
print $array[3] . "\n";
print $array[4] . "\n";
print $array[5] . "\n";
La función sort ordena bien los números y la salida es la esperada, pero cuando cambio un elemento del array por un número de dos cifras, únicamente ordena la primera cifra, un ejemplo:
#!/usr/bin/perl
use warnings;
use strict;
my @array = (5, 43, 45, 3, 7, 6);
@array = sort @array;
print $array[0] . "\n";
print $array[1] . "\n";
print $array[2] . "\n";
print $array[3] . "\n";
print $array[4] . "\n";
print $array[5] . "\n";
La salida de este codigo es
Citar2
3
43
45
5
6
Las unicas cifras que está ordenadas son las primeras.
Saludos