1 2 |
// Devuelve un 1/true, si es correcta, 0/false, en caso contrario: valFecha( dia, mes, anio ); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
// Función que valida una fecha: int valFecha( int dia, int mes, int anio){ // Precondición: Se han de recibir tres parámetros, todos ellos de tipo entero. // Poscondición: Se devolverá un 0/false o un 1/true. int bol = 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 ){ bol = 1; }; break; case 4: case 6: case 9: case 11: if( dia >= 1 && dia <= 30 ){ bol = 1; }; break; case 2: //Si el año es bisiesto +1 día. if( (anio%4 == 0) && (anio%100 != 0) || (anio%400 == 0) ){ if( dia >= 1 && dia <= 29 ){ bol = 1; }; } else{ if( dia >= 1 && dia <= 28 ){ bol = 1; }; }; break; }; }; return bol; }; |