• Publicidad

Practicar en Perl6 sin instalar nada

Novedades y noticias acerca de todo lo relacionado a Perl.

Practicar en Perl6 sin instalar nada

Notapor wladif » 2010-09-29 14:42 @654

En este enlace, pueden probar programas pequeños directamente en su navegador.

http://try.rakudo.org

Como muestra, pueden partir con este código, que calcula el dígito verificador del RUT en Chile.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my $s_Rut = "30686957"; my @a_rut = split '', $s_Rut;
my $n_DV = (11 - [+](@a_rut.reverse <<*>> (2..7))) % 11;
$n_DV.say;
 
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Este ejemplo debería dar 4.

El algoritmo lo pueden ver en el siguiente enlace http://tinyurl.com/2973yfs (busquen Cálculo del dígito verificador, Módulo 11)
wladif
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2009-07-22 12:05 @545

Publicidad

Re: Practicar en Perl6 sin instalar nada

Notapor explorer » 2010-09-29 15:58 @707

Gracias por el aporte, al que solo tengo que decir dos salvedades: aunque, aparentemente y matemáticamente, son iguales, el algoritmo habla primero del cálculo del módulo, y luego del cálculo de la diferencia entre 11 y el resultado del módulo, no al revés. En Perl, el comportamiento del operador módulo es "diferente" según sea los números sean positivos o negativos:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
> say 23 % 11
1
> say -23 % 11
10
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Y segundo, no están contemplados los casos de cuando el resultado de la diferencia es 10 u 11. Según el algoritmo, el resultado debería ser 'K' y '0', respectivamente (según se indica en Rol Único Tributario).
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

Re: Practicar en Perl6 sin instalar nada

Notapor wladif » 2010-09-30 10:22 @473

Bueno, veo que subiste el algoritmo correcto en Wikipedia. Para temas del ejemplo, lo simplifiqué mucho, solo que me faltó agregar ese "detallito" a mi post :)

De todos modos, queda genial para comparar el algoritmo en 4 líneas en Perl6 contra el de 21 líneas en Visual Basic, ¡ja,ja,ja!
wladif
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2009-07-22 12:05 @545

Re: Practicar en Perl6 sin instalar nada

Notapor explorer » 2010-09-30 15:39 @694

Es obvio que no se pretende escribirlo de forma corta, porque entonces entramos en el área del Perl ofuscado, y eso siempre va en contra de la "fama" de Perl, si no está colocado en el sitio adecuado.

Más bien, intentar que los pasos sean sencillos y claros que anime a los lectores a aprender Perl.

Lo he modificado para dejarlo en poco más de diez líneas, pero aún así queda más bonito que la de Visual Basic :)
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 Noticias de Perl

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados