Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - viruss1362

#1
Ejercicios / Problema ejericio 104 bisiesto
22 Abril 2005, 19:59 PM
hola tengo un problema con el ejericio 104 mi codigo es el siguiente:

/* Ejercicio 104
Escribir un programa que solicite un año e indique si es bisiesto o no
Un año es bisiesto si es múltiplo de 4 excluyendo aquellos que son múltiplo de 100 y no de 400.
- Los años exactamente divisibles entre 4 son años bisiestos.
- Los años exactamente divisibles entre 100 no son años bisiestos.
- Los años exactamente divisibles entre 400 sí son años bisiestos.
*/
#include <stdio.h>
int num;
int resto;
main()
{
printf("Escriba un año y le dire si es bisiesto o no: ");
fflush(stdin);
scanf("%d",&num);
if (num>1 && num<20000)
    {
    resto = num%4;
    if(resto == 0 && num%100 != 0)
    printf("El año es bisiesto");
    else if(num%100 == 0 && num%400 != 0)
    printf("El año no es bisiesto");
    else
    printf("El año no es bisiesto");
    }
else
{
printf("Introduzca un numero razonable");
}
getchar();
getchar();
}


Si lo probais verias k si poneis 2003 como es logico no es bisiesto pero si ponemos 2004 si es bisiesto, de momento todo bien, pero y si pongo 2000? me dice que no es bisiesto pero si lo es.. y en vuestro codigo publicado en soluciones c pasa lo mismo.. se puede arreglar o es k 2000 es un año especial?