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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
| /*
** Auteur: Oyo
** Fichier: Verif Date
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
int j,m,a,di; /* Initialisation des vars */
printf("Entrez le J/M/A: "); /* Affichage du txt */
scanf("%d/%d/%d", &j,&m,&a); /* Récupération des vars */
di=a%4; /* Calcule des année bisextille */
/*
** On verrifie que m est compris entre 0 et 12, et que j est compris entre 0 et 31
** ainsi que le résultat du calcule des années bisextille:
** Si le résultat obtenue par le modulo et 1 alors c'est une année bisextille
*/
if ((m<0) || (m>12) || (j<0) || (j>31) || (di))
{
/*
** On verrifie que les mois suivant comporte bien 31 jours,
** sinon on retroune une erreur.
*/
if((m==1) || (m==3) || (m==5) || (m==7) || (m==8) || (m==10) || (m==12))
{
if ((j>=31))
{
printf("Erreur! Il n'y a que 31 jours dans ce mois.\n");
}
}
/*
** On verrifie que les mois suivant comporte bien 30 jours,
** sinon on retroune une erreur.
*/
else if ((m==4) || (m==6) || (m==9) || (m==11))
{
if (j>=30)
{
printf("Erreur! Il n'y a que 30 jours dans ce mois.\n");
}
}
/*
** On verrifie que l'année entrée est bien bisextille,
** ainsi on sait si le mois comporte 28 ou 29 jours,
** sinon on retroune une erreur.
*/
else if ((m==2))
{
if ((di==1))
{
printf("Erreur! Il n'y a que 28 jours dans ce mois.\n");
}
else if ((di==0))
{
printf("Erreur! Il n'y a que 29 jours dans ce mois.\n");
}
else
{
printf("Erreur! Il n'y a que 28 ou 29 jours dans ce mois.\n");
}
}
/*
** On verrifie que les jours entrés sont compris entre 1 et 31
** sinon on retroune une erreur.
*/
else if ((j<0) || (j>31))
{
printf("Erreur! Il y au minimum 1 jour et maximum 31 jour dans un mois.\n");
}
/*
** On verrifie que les jours entrés sont compris entre 1 et 12
** sinon on retroune une erreur.
*/
else if ((m<0) || (m>12))
{
printf("Erreur! Il n'y a que 12 mois dans une annee.\n");
}
}
/*
** On verrifie que l'année entrée est superieur à 1900
** sinon on retroune une erreur.
*/
else if (a<1900)
{
printf("Erreur! L'annee doit etre au minimum 1900.\n");
}
/*
** Une fois tout les vérrification faites on affiche le résultat.
*/
else
{
printf("%d/%d/%d \n", j,m,a);
}
system("PAUSE");
return 0;
} |
Partager