Incrementation +4 - C - Programmation
Marsh Posté le 17-01-2007 à 14:33:35
Salut!
une solution simple serait de faire un tableau contenant le nombre de jour de chaque mois, et ensuite de vérifier si JJ est inférieur ou égale à Tableau[MM].
EDIT : attention toutefois aux années bissextiles
Marsh Posté le 17-01-2007 à 17:33:39
C'est possible
Code :
|
Marsh Posté le 17-01-2007 à 23:39:41
Si tu tiens à garder ton test IF (bien que le switch soit efficace ici) tu peux ajouter des conditions OU ||
if(truc || bidulle || machin)...
Marsh Posté le 17-01-2007 à 23:45:00
-ThX- a écrit :
|
Petite erreur, une année bissextile est (divisible par 4 et non divisible par 100) ou divisible par 400 (1900 n'était pas bissextile, 2000 l'a été)
Ton test donne comme bissextile une année divisible par 4 et pas par 400 (il donne 1900 comme bissextile et pas 2000)
Code :
|
Marsh Posté le 17-01-2007 à 14:25:56
Bonour, je doit ecrire un programme pour calculer le nombre de jours entre 2 dates et je n'en suis encore qu'au debut.
J'utilise une fonction scanf pour entrer une date (JJ MM AAAA) et j'aimerais que le programme s'arrete si la date indiquee n'existe pas.
C'est chose faite si MM>12 mais commes chaque mois a un nombre de jours qui varie je me demandais s'il etait possible d'ecrire
une condition reprenant tout les mois qui comptent 31 jours et une autre comprenant tout les mois qui comptent 30 jours avec une condition speciale pour fevrier.
Est ce que
if (MM=1, MM=3, MM=5, MM=7, MM=8, MM=10, MM=12) est juste
Excusez moi pour le peu de clarter dans ce message mais j'ai encore beaucoup de mal a m'exprimer en langage C