Bonjour tout le monde,
Je dois faire un exercice qui dis si une année est bissextile (années divisibles par 4) et cela en tenant compte des années séculaires (années non divisibles par 400).
Ma question :
Dans le code ci-dessous, il y'a un if imbriqué.
Si le premier la condition du premier if n'est pas respectée, je présûme que le code ne s'occupe même pas du second if ?
Si la première condition est OK, est-ce qu'il tient compte de la seconde ?
Exemple : 1900 est divisible par 4 mais pas par 400 mais il me dit que c'est une année bixestile.
Donc le résultat n'est pas correcte.
Il faudrait donc trouver un "truc" qui permettrait de savoir si l'année se termine par 00 et à ce moment là, on pourrait diviser par 4 et ensuite par 100, connaissez-vous l'astuce pour savoir si un Int se termine par 00 ?
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public class AnneeBixestile { public static void main (String[] args) { int anneeAControler; System.out.println("Veuillez indiquer une année (en 4 chiffres), je vous dirai si elle est bixestile ou non "); anneeAControler = Clavier.lireInt(); //System.out.println("l'année entrée vaut : " + anneeAControler); if ((anneeAControler % 4) == 0) { if ((anneeAControler % 100 == 0)) { System.out.println(anneeAControler + " est bixestile"); } } else { System.out.println(anneeAControler +" n'est pas une année bixestile !"); } } }
beegees
Partager