FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Saber si un año es bisiesto
Hola a todos. En la aplicación que estoy desarrollando necesito saber si un año es bisiesto o no según la fecha que se introduzca. ¿Hay alguna forma de calcularlo?
Gracias. |
#2
|
||||
|
||||
Hola,
aquí tienes una manera sencilla:
Espero te sirva. Saludos |
#3
|
|||
|
|||
Hola Bicho,
la función que me has pasado funciona. Aunque si la fecha no existe te da un mensaje de error y después continua bien. ¿Hay alguna forma de que no salte el mensaje de error? Gracias |
#4
|
||||
|
||||
Hola,
¿has copiado el try.. except? Si no es así ponlo para capturar el error y evitar que te salga. Si lo has puesto y aún así te salta un error (te lo debe estar dando si lo ejecutas desde Delphi, ¿no?) debes desactivar los errores del debuger: Menú Tools => Debugger Options => Pestaña Language Exceptions => Desmarcar: Stop On Delphi Exceptions. Saludos |
#5
|
|||
|
|||
Al desactivar la opción que has dicho ya no sale más.
Gracias por todo. |
#6
|
||||
|
||||
Creo que esta función es todavía más sencilla, te la brinda la unidad de Delphi SysUtils:
Saludos!!!
__________________
Si no lo sabes, necesitas leerlo |
#7
|
|||
|
|||
Sólo como curiosidad, los años bisiestos son todos los divisibles entre 4, excepto los que sean divisibles entre 100 y no entre 400. Algo así:
|
#8
|
||||
|
||||
Además de IsLeapYear tenemos DaysInAYear
Function EsBisiesto(PwAnio: Word): Boolean; Begin Result := DaysInAYear(PwAnio) = 366 End;
__________________
Conoce mi blog http://www.edgartec.com |
#9
|
||||
|
||||
Pero DaysInAYear utiliza IsLeapYear:
// Saludos |
#10
|
|||
|
|||
Otra posible manera de hace lo seria poner el primer dia de la fecha del siguiente mes y restandole 1 nos daria los dias.
|
#11
|
||||
|
||||
Viene a ser lo mismo que comenté antes. DecodeDate necesitará saber si el año es bisiesto para determinar cuál es el día anterior al primero de marzo.
// Saludos |
#12
|
||||
|
||||
Hola,
Cita:
Saludos Última edición por Bicho fecha: 20-03-2007 a las 18:50:34. |
#13
|
||||
|
||||
Oye Bicho, ¿cómo crees que hace StrToDate para generar el error en caso de que le pases un año que no es bisiesto?
// Saludos |
#14
|
||||
|
||||
Esto es lo que hay, que yo tambien se mirarlo, eh?
Saludos |
#15
|
||||
|
||||
Ajá, y ScanDate utiliza TryEncodeDate:
// Saludos |
#16
|
||||
|
||||
Creo que se están corriendo en círculos, solo es necesario utilizar IsLeapYear.
Para que codificar algo que ya está hecho,
__________________
Conoce mi blog http://www.edgartec.com |
#17
|
|||
|
|||
hola......
hola....
escribeme a mi correo es mas practico y pueda ayudarte en lo que necesites cmpimentel@imfomed.sld.cu Cita:
|
#18
|
|||
|
|||
[quote=cmpimentel]hola....
escribeme a mi correo es mas practico y pueda ayudarte en lo que necesites cmpimentel@imfomed.sld.cu soy informatico sivernetico y vivo en ciudad de la habana, cuba |
#19
|
||||
|
||||
Cita:
// Saludos |
#20
|
||||
|
||||
Cita:
// Saludos |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Saber si es (x86) ó (x64) | acertij022 | Varios | 2 | 20-02-2007 20:29:53 |
Saber si es un entero | chipsoni | Varios | 4 | 06-02-2007 16:52:48 |
Saber Ip de una PC??? | JELIRM | API de Windows | 4 | 02-07-2006 22:28:38 |
Saber la ip del servidor? | crievep | Conexión con bases de datos | 1 | 05-04-2006 21:22:56 |
Saber si hay conexion | JCR | Internet | 0 | 26-04-2004 21:07:06 |
|