[SOLUCIONADO][PERL] Comparar dos user inputs con un hash

Iniciado por Toshayx, Septiembre 30, 2016, 06:32:12 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Septiembre 30, 2016, 06:32:12 AM Ultima modificación: Octubre 01, 2016, 12:03:00 PM por Gabriela
Buenas underc0deanos :)

Hace unos dias que comenze con perl, y estoy creando un programa que permita elegir al usuario una key de un hash,

Despues se le pregunta por el value de esa key y el programa tiene que saber si es correcto o no, aqui esta el codigo:

Código: php
#!/usr/bin/perl

%champroled = ('tristana' => 'adc' ,'sona'=> 'support','diana'=>'mid','malph'=> 'top','sejuani'=> 'jungle');
@champs= keys %champroled;
@rol = values %champroled;
$init = 0;


print "Elige un campeon de la lista\n";

for $i ($init .. $#champs){
print "$champs[$i]  \n";


}

$campeon = <>;

print "Que rol cumple este campeon?\n";

$roled = <>;


if ($roled == $champroled{$campeon}){
print "Muy bien :)\n";

}
else {
print "Has fracasado\n";
}


Sea falso o verdadero retorna siempre el "Muy bien :)",

He buscado por internet pero no logro dar con la solucion :(, es mi iniciacion en programacion y estoy super verde...

Si alguien puede echarme una mano seria genial :)

Un saludo.

Vale ya lo he solucionado...

primero la comparacion entre strings hay que hacerla con eq no con ==,

despues puse chomp($var); para los dos inputs de los usuarios, aun no se que es chomp, pero ley por ahi que te soluciona este tipo de problemas.

Gracias a todos y disculpas por postear tan rapido antes de tomarme tiempo para investigarlo mas a fondo...