Mar Dic 04, 2007 3:40 pm
|
|
|
| Comparar horas |
|
|
Hola compañeros...
¿Cómo puedo comparar si la hora actual hora está dentro de un rango?
El ejemplo sería:
| Código: |
HorarioAtencionInicial = 09:00
HorarioAtencionFinal = 18:00 |
Entonces, necesito saber si la hora que ejecuto el script entra en ese rango de horario.
Sería:
| Código: |
Si (HorarioAControlar >= HorarioAtencionInicial y
HorarioAControlar <= HorarioAtencionFinal)
return VERDADERO
SINO
return FALSO
FIN-SI |
Desde ya muchas gracias.
Saludos. |
|
|
|

Mar Dic 04, 2007 5:52 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4222
Ubicación: Valladolid, España
|
|
|
|
|
Bienvenido a los foros de Perl en Español, alcidesalarcon.
La comparación de horas se puede hacer fácil, si hacemos una comparación alfabética, con la condición de que las horas estén bien escritas.
| Perl: | #!/usr/bin/perl
$HorarioAtencionInicial = '09:00';
$HorarioAtencionFinal = '18:00';
sub dentro_del_rango {
my $HorarioAControlar = shift;
return
$HorarioAControlar gt $HorarioAtencionInicial
and
$HorarioAControlar lt $HorarioAtencionFinal
}
my @horas = qw(
16: 24
09: 42
03: 00
);
foreach my $hora ( @horas ) {
print "$hora ";
if ( not dentro_del_rango ($hora) ) {
print 'no ';
}
print "está dentro del rango\n";
} |
| Código: |
16:24 está dentro del rango
09:42 está dentro del rango
03:00 no está dentro del rango |
|
|

Mar Dic 04, 2007 7:28 pm
|
 |
Jenda
Perlero Frecuente

|
Registrado: 29 Oct 2007
Mensajes: 108
Ubicación: Praga, Republica Checa
|
|
| localtime() y sprintf() |
|
|
| Y para obtener la hora actual, bien escrita, se puede usar localtime() y sprintf(). |
|
Powered by phpBB © 2001, 2005 phpBB Group
|