• Viernes 8 de Noviembre de 2024, 13:38

Autor Tema:  Años Bisiestos (#4).  (Leído 7405 veces)

_.B._

  • Miembro activo
  • **
  • Mensajes: 88
    • Ver Perfil
Años Bisiestos (#4).
« en: Miércoles 4 de Febrero de 2004, 20:27 »
0
Algo necesitado con frecuencia, es saber si un año es o no bisiesto.
Para ello, diseñé éste sencillo código:

Código: Text
  1.     FUNCTION Bisiesto (Anio:INTEGER):BOOLEAN;
  2.       BEGIN
  3.         Bisiesto:=FALSE;
  4.         IF Anio MOD 400 = 0 THEN
  5.           Bisiesto:=TRUE
  6.         ELSE
  7.           IF Anio MOD 100 = 0 THEN
  8.             Bisiesto:=FALSE
  9.           ELSE
  10.             IF Anio MOD 4 = 0 THEN
  11.               Bisiesto:=TRUE
  12.       END;
  13.  
  14.  

Bueno, estos 4 por ahora.
Suerte, y espero les sirvan.
A programar!.

Bernardo L. :comp:
¡Olmo, dame peras!
www.BernardoLG.net

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #1 en: Miércoles 4 de Febrero de 2004, 22:59 »
0
:o  No habia visto una funcion que identifica un año bisiesto tan corta.
 ¡Me la copio YA!
Gracias por pasarlo a la pagina , mas personbas deberian hacerlo asi se podrian
ver otros ejemplos de la buena programacion B)

CiRRuS

  • Miembro MUY activo
  • ***
  • Mensajes: 218
    • Ver Perfil
    • http://zirrus.es
Re: Años Bisiestos (#4).
« Respuesta #2 en: Miércoles 4 de Febrero de 2004, 23:11 »
0
Estos son de los algoritmos que vale la pena para cualquier lenguaje, no solo para pascal, codigo limpio y a primera vista (y despues de varias pruebas  :comp: ) eficiente.

Pascal no programo casi nada, pero para C y demás viene de maravilla  :D .

Thks. Nos vemos
Core Dumped
zirrus.es

BlackTigerX

  • Miembro activo
  • **
  • Mensajes: 92
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #3 en: Viernes 6 de Febrero de 2004, 15:19 »
0
Código: Text
  1.  
  2. function Bisiesto(Anio: Integer): Boolean;
  3. begin
  4.   Bisiesto:= (Anio mod 4 = 0) and ((Anio mod 100 <> 0) or (Anio mod 400 = 0));
  5. end;
  6.  
  7.  
salu2
BlackTigerX

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #4 en: Viernes 6 de Febrero de 2004, 15:24 »
0
BlackTiger  :
                   Eso lo que yo llamo  un algoritmo eficaz :comp: !

TempWin

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
    • http://jab.blogia.com
Re: Años Bisiestos (#4).
« Respuesta #5 en: Sábado 7 de Febrero de 2004, 00:50 »
0
Vaya, BlackTigerX, yo cree un programa que tiene el mismo código que tú  :P

Gracias por la aportación!
http]

BlackTigerX

  • Miembro activo
  • **
  • Mensajes: 92
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #6 en: Sábado 7 de Febrero de 2004, 15:51 »
0
si pues, este codigo ya es viejo, yo no lo cree... me imagino que tendra muchos años en circulacion... solo lo comparto con ustedes
BlackTigerX

elmango80

  • Miembro MUY activo
  • ***
  • Mensajes: 149
  • Nacionalidad: ve
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #7 en: Jueves 11 de Marzo de 2004, 10:13 »
0
FELICITACIONES

En todos los años que estuve programando en Pascal nunca me encontre con un algoritmo tan corto y tan efectivo....


:devil: ---------------------- :angel:
Citar
No soy bueno, tampoco soy malo sino todo lo contrario...

flog

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #8 en: Lunes 30 de Mayo de 2005, 18:24 »
0
Yo tengo una mas corta todavia!!!

function Bisiesto(Anio: Integer): Boolean;
begin
 Bisiesto:= (Anio mod 4 = 0)
end;

Todos los años multiplos de 4 del año 2000 seran bisiestos!!! jejeje

 ;)

Lastent

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #9 en: Martes 31 de Mayo de 2005, 20:29 »
0
BlackTigerX no veo que no usas estructuras de control, entonces una pregunta sabes como cambiar dos filas de un  arreglo sin extructuras de control?????

JrcsDev

  • Miembro MUY activo
  • ***
  • Mensajes: 245
  • Nacionalidad: ve
    • Ver Perfil
    • http://codigo7.wordpress.com/
Re: Años Bisiestos (#4).
« Respuesta #10 en: Sábado 8 de Julio de 2006, 05:18 »
0
emmm... tengo una duda: no se supone que para saber si un año es bisiesto solo debemos obtener el residuo de dividirlo entre 4??? o sea solo: anio mod 4 = 0...

Creo que eso es suficiente =S
Sígueme en Twitter]
Donar comida a los chicos necesitados!
Todo lo puedo en Cristo que me fortalece...

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Años Bisiestos (#4).
« Respuesta #11 en: Sábado 8 de Julio de 2006, 14:19 »
0
Cita de: "leon-binario"
emmm... tengo una duda: no se supone que para saber si un año es bisiesto solo debemos obtener el residuo de dividirlo entre 4??? o sea solo: anio mod 4 = 0...

Creo que eso es suficiente =S
yo siempre pense lo mismo, con tal de que sea multiplo de 4 debe de ser suficiente. :rolleyes:

(esto sobre el codigo del primer post:
400 es multiplo de 4 al igual que 100, por eso el 4 es lo qe importa)