• Publicidad

Elemento repetido en array

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Elemento repetido en array

Notapor Lumyjj » 2010-01-08 17:33 @773

Hola :)

Me gustaría saber alguna forma de determinar el elemento (la variable) más repetido en un array para almacenar este elemento más tarde en un hash.

Gracias.
Lumyjj
Perlero nuevo
Perlero nuevo
 
Mensajes: 13
Registrado: 2009-12-27 07:05 @336

Publicidad

Re: Elemento repetido en array

Notapor teco000 » 2010-01-08 17:47 @782

teco000
Perlero nuevo
Perlero nuevo
 
Mensajes: 67
Registrado: 2008-05-29 15:22 @682
Ubicación: Guatemala

Re: Elemento repetido en array

Notapor Lumyjj » 2010-01-09 16:24 @725

Gracias por las respuestas, estoy probando el código y la verdad es que no entiendo muy bien qué hace esta parte del programa:
my $c = ++$hash{$v};

He pensando por otra parte que podría separar los valores y las claves del hash que cuenta las repeticiones, pero no sé muy bien cómo determinar la posición del número más alto en un array, como por ejemplo en este: (4,5,7,2); sería $array[2].
Lumyjj
Perlero nuevo
Perlero nuevo
 
Mensajes: 13
Registrado: 2009-12-27 07:05 @336

Re: Elemento repetido en array

Notapor explorer » 2010-01-09 18:19 @805

$hash{$v} contiene las veces que ha aparecido el valor $v.
++$hash{$v} incrementamos en una las veces que ha aparecido el valor $v.
my $c = ++$hash{$v} almacenamos ese nuevo valor en $c.

Y para encontrar el mayor valor dentro de un array (no probado):
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my @array = (4,5,7,2);
my $maxpos = 0;                            # En dónde. En principio, el primero

for (my $i = 0; $i < @array; $i++) {       # recorremos todos los índices
    if ($array[$i] > $array[$maxpos]) {    # si hemos encontrado un valor mayor en la posición $i,
        $maxpos = $i;                      # actualizamos la posición del más popular, a ella.
    }
}

print "La posición del más alto es $maxpos\n";
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado