sábado, 20 de abril de 2013

Programando en Perl no. 3

Continuamos con esta serie de ejemplos con el lenguaje de programación Perl.

Ejemplo 1. Horoscopo chino en Perl

my %horoscopoChino(0,"mono",1,"gallo",2,"perro",3,"cerdo",4,"rata",5,"buey",6,"tigre",7,"conejo",8,"dragon",9,"serpiente",10,"caballo",11,"cabra");
$resto=0;
print "Anyo de nacimiento: ";
$anyo= <STDIN>;
print "Anyo de nacimiento: ",$anyo;
$anyo=chomp($anyo);
$resto=int($anyo)%12;
print "Te corresponde el signo del:  ". $horoscopoChino{$resto}." \n";

Ejemplo. si el año en el que naciste es 1981, te corresponderá el signo del gallo.

Ejemplo 2.  Calcular días trabajados de un empleado.

my $dia_inicio=0;
my $dia_fin=0;
my $mes_inicio="";
my $mes_fin="";
my $anyo_inicio=0;
my $anyo_fin=0;

my %mesesAnyo=("enero",0,"febrero",1,"marzo",2,"abril",3,"mayo",4,"junio",5,"julio",6,"agosto",7,"septiembre",8,"octubre",9,"noviembre",10,"diciembre",11);

print "Introduce fecha de inicio: \n";
print "Dia: ";
$dia_inicio=<STDIN>;
print "Mes: ";
$mes_inicio=<STDIN>;
chomp($mes_inicio);
print "Anyo: ";
$anyo_inicio=<STDIN>;
print "\nIntroduce fecha de inicio: \n";
print "Dia: ";
$dia_fin=<STDIN>;
print "Mes: ";
$mes_fin=<STDIN>;
chomp($mes_fin);
print "Anyo: ";
$anyo_fin=<STDIN>;

$mesInicio=$mesesAnyo{$mes_inicio};
$mesFin=$mesesAnyo{$mes_fin};


#para los días, se le presta 30
if($dia_inicio > $dia_fin){
  $dia_fin=$dia_fin+30;
}

#para los meses, se le presta 12
if($mesInicio > $mesFin){
  $mesFin=$mesFin+12;
}

$restaDia=$dia_fin - $dia_inicio;
$restaMes=$mesFin - $mesInicio;
$restaAnyo=($anyo_fin-1) - $anyo_inicio;

print "Resultado: ";
print $restaAnyo," anyos ";
print $restaMes," meses ";
print $restaDia," dias";

Ejemplo. Fecha de inicio 2 de agosto de 2003 , fecha final 10 de enero de 2005 nos daría 1 año 5 meses 8 días

Enlaces:

https://codemonkeyjunior.blogspot.com/2013/03/programando-en-perl-no-2.html
https://codemonkeyjunior.blogspot.com/2013/02/un-vistazo-perl.html

No hay comentarios:

Publicar un comentario

Claude Code: un nuevo enfoque de la programación por pares

Claude Code es una herramienta de inteligencia artificial creada por Anthropic que funciona directamente en la terminal. Sirve para acele...

Etiquetas

Archivo del blog