Bonsoir tous ,
je trouve sur internet le sujet suivant :
1 Si l'année est divisible par 4, passez à l'étape 2. Dans le cas contraire, passez à l'étape 5.
2 Si l'année est divisible par 100, passez à l'étape 3. Dans le cas contraire, passez à l'étape 4.
3 Si l'année est divisible par 400, passez à l'étape 4. Dans le cas contraire, passez à l'étape 5.
4 L'année est une année bissextile (elle a 366 jours).
5 L'année n'est pas une année bissextile (elle a 365 jours).
je décide de l'appliquer à un de mes programmes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
if(!(year % 4)) 
{
	if(!(year % 100))
	{
		if(!(year % 400)) {leap=true;}
		else {leap=false;}
	}
	else {leap=true;}
}
else {leap=false;}
Probléme : l'année 2010 ressort comme année bisextile alors qu'elle ne l'était pas !
Est ce dû à mon interprétation de l'algorythme ??
Ce qui me choque c'est que la première condition devrait être suffisante pour donner le bon résultat ; je soupçonne un comportement non prévu mais lequel ?