/*__________________________________________________ Libro: EMPEZAR DE CERO A PROGRAMAR EN LENGUAJE C Ejemplo 12.10: Validar fecha (Solución 2) Web del Autor: http://www.carlospes.com __________________________________________________*/ #include int main() { int dia, mes, anio, fecha_correcta /* interruptor */; printf( "\n Introduzca dia: " ); scanf( "%d", &dia ); printf( "\n Introduzca mes: " ); scanf( "%d", &mes ); printf( "\n Introduzca anio: " ); scanf( "%d", &anio ); fecha_correcta = 0; if ( mes >= 1 && mes <= 12 ) { switch ( mes ) { case 1 : case 3 : case 5 : case 7 : case 8 : case 10 : case 12 : if ( dia >= 1 && dia <= 31 ) fecha_correcta = 1; break; case 4 : case 6 : case 9 : case 11 : if ( dia >= 1 && dia <= 30 ) fecha_correcta = 1; break; case 2 : if ( anio % 4 == 0 && anio % 100 != 0 || anio % 400 == 0 ) { if ( dia >= 1 && dia <= 29 ) fecha_correcta = 1; } else if ( dia >= 1 && dia <= 28 ) fecha_correcta = 1; } } /* Llegados a este punto, según el valor de fecha_correcta, por pantalla se mostrará un mensaje u otro. */ if ( fecha_correcta ) printf( "\n FECHA CORRECTA" ); else printf( "\n FECHA INCORRECTA" ); return 0; }