domingo, 22 de abril de 2012

Comprobar si un año es bisiesto o regular en Lenguaje C

Para que un año sea bisiesto se deben cumplir 3 condiciones:

1. Que el año sea múltiplo de 4. Es decir, que al dividirlo entre 4 el resto de 0.

2. Que el año NO sea múltiplo de 100. Irónico ya que el propio 100 es múltiplo de 4, con lo que esta condición contradice a la primera aunque luego lo resolveremos.

3. Para liarlo aún más, un año también es bisiesto si es múltiplo de 400, aunque el propio 400 sea múltiplo de 100 que ya se está contradiciendo con la condición 2. 

Con esto tenemos que:

Los años 4,8,12,16... son bisiestos.
Los años 100,200,300,500... no son bisiestos.
Los años 400,800,1200,1600... son bisiestos. 


Pues vamos a hacer el programa que lo resuelva todo.




{


int num1;


printf("Introduce un numero: ");
scanf("%d",&num1);

//Las dos primeras condiciones: Si num1 es múltiplo de 4 y NO es múltiplo de 100


if((num1%4==0) && !(num1%100==0))
{
    printf("El año es bisiesto");
}


//La tercera condicion: Si num1 es múltiplo de 4


else if (num1%400==0)
{
    printf("El año es bisiesto");
}


else // Todos los demás no son bisiestos
{
    printf("El año NO es bisiesto");
}


}

11 comentarios:

  1. Muchas gracias, me sirvió de mucho ^^

    ResponderEliminar
  2. muchisimas gracias me sirve mas que lo que me explican en clases...

    ResponderEliminar
  3. Respuestas
    1. Aparte de no tener ni idea de programar, no sabes que libray no es libreria, sino biblioteca

      Eliminar
    2. VETE A VER PORNO INÚTIL

      Eliminar
    3. Como me enferman los Inútiles que creen que la única forma o metodo que existe es lo que ellos conocen, el resto no existe. Daniel Fabre pregunta porque no sabe, y esta bien que se equivoque en la pregunta, de ultima respondanle y enseñen en la respuesta, no como los 2 anónimos que critican y el segundo directamente es un pobre que no merece la pena tenerlo en cuenta, Yo programo en principalmente en C y Ensamblador, y algo de C++, C#, java, tambien arduino (processing), y es normal que al principio te equivoques y confundas en el nombre de las libreria, biblioteca, driver, controlador, etc. pero eso sucede cuando programas muchos tipos de lenguajes. Recuerdo cuando en ms-dos llamaban a las carpetas como directorio y tambien aparecían los críticos si te equivocabas.

      Eliminar
  4. Gracias... Fue de mucha ayuda...

    ResponderEliminar
  5. Gracias me ayudo mucho

    ResponderEliminar
  6. ¡Creo que te amo, gracias, me sirvió mucho!

    ResponderEliminar