Compro Barf Echa

download Compro Barf Echa

If you can't read please download the document

description

codigo

Transcript of Compro Barf Echa

#!/usr/bin/perl%meses = (1, "Enero", 2, "Febrero", 3, "Marzo", 4, "Abril", 5, "Mayo", 6, "Junio", 7, "Julio", 8, "Agosto", 9, "Setiembre", 10, "Octubre", 11, "Noviembre", 12, "Diciembre");$fecha = $ARGV[0];$fecha_ok = 1;($dia, $mes, $ano) = split (/\//, $fecha);use integer;#if ($ano < 2000 or $ano > 2030) {# $fecha_ok = 0;# print "Ao fuera de rango\n";# }#else {$bisiesto = (($ano % 4) == 0);# }if ($mes < 1 or $mes > 12) {$fecha_ok = 0;print "Mes no valido\n";}if ($dia < 0 or $dia > 31) {$fecha_ok = 0;print "Dia no valido\n";}elsif (($mes == 4 or $mes == 6 or $mes == 9 or $mes == 11) and $dia > 30) {$fecha_ok = 0;print "Dia no valido\n";}elsif ($mes == 2 and $dia > 29) {$fecha_ok = 0;print "Dia no valido\n";}elsif ($mes == 2 and $dia == 29) {unless ($bisiesto) {$fecha_ok = 0;print "Dia no valido\n";}}if ($fecha_ok) {print "Hoy es $dia de $meses{$mes} de $ano\n";print juliano($ano, $mes, $dia);print "\n";print 3/4;print "\n";}exit;sub juliano{my($year, $month, $day) = @_;my($tmp);# my($secs);# use Carp;# confess() unless defined $day;$tmp = $day - 32075 - 2415019+ 1461 * ( $year + 4800 - ( 14 - $month ) / 12 )/4+ 367 * ( $month - 2 + ( ( 14 - $month ) / 12 ) * 12 ) / 12- 3 * ( ( $year + 4900 - ( 14 - $month ) / 12 ) / 100 ) / 4;return($tmp);}