Tester si l'annee est bissextile
douda86
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
le probleme c'est que j'arrive pas a tester si l'annee de ma date d'entree est bissextile ou nn afin d'avoir accepter une date comme par exemple 29/02/2009 malgere que j'ai declaree une methode estBissextile()
merci pour votre aide
le probleme c'est que j'arrive pas a tester si l'annee de ma date d'entree est bissextile ou nn afin d'avoir accepter une date comme par exemple 29/02/2009 malgere que j'ai declaree une methode estBissextile()
merci pour votre aide
A voir également:
- Tester si l'annee est bissextile
- Flash drive tester - Télécharger - Divers Utilitaires
- Tester son pc - Guide
- Tester composant pc - Guide
- Tester compatibilité windows 11 - Guide
- Tester disque dur - Télécharger - Informations & Diagnostic
4 réponses
Salut,
Cordialement,
Dan
// Tout d'abord pour info:
// -savoir si une annee est bissextile
String laDate = "17/11/2012";
int lAnnee;
lAnnee = Integer.parseInt(laDate.substring(6));
GregorianCalendar gcal = new GregorianCalendar(); //import java.util.GregorianCalendar;
boolean b = gcal.isLeapYear(lAnnee); // annee bissextile = true
if (b)
System.out.println("\nL'annee " + lAnnee + " est bissextile.");
else
System.out.println("\nL'annee " + lAnnee + " n'est pas bissextile.");
// -Maintenant pour savoir si une date saisie est correcte:
String laDateSaisie = "29/02/2009"; // en supposant que la date est saisie correctement
// il faut fournir a GregorianCalendar les 3 parametres int p1, int p2, int p3
// dans l'ordre p1 = aa, p2 = mm et p3 = jj
// par exemple
int p1 = Integer.parseInt(laDateSaisie.substring(6));
int p2 = Integer.parseInt(laDateSaisie.substring(3, 5));
int p3 = Integer.parseInt(laDateSaisie.substring(0, 2));
System.out.println("\np1/p2/p3 " + p1 + "/" + p2 + "/" + p3);
GregorianCalendar gc = new GregorianCalendar(p1, p2 -1, p3); // -1 car mois est une valeur 0 a 11
gc.setLenient(false); // sans cette ligne, pas d'exception possible
try
{ // (true par defaut)
int annee = gc.get(GregorianCalendar.YEAR);
int num_mois = gc.get(GregorianCalendar.MONTH);
int jour = gc.get(GregorianCalendar.DAY_OF_MONTH);
System.out.println("jour/num_mois/annee " + jour + "/" + (num_mois +1) + "/" + annee);
}
catch (IllegalArgumentException iea)
{
System.out.println("\nLa date saisie est incorrecte");
//....
//....
}
Cordialement,
Dan
Arg!
Je ne suis pas comptétent en java malheureusement!
Essayez
https://java.developpez.com/
c'est trés complet!
Utilisez le forum pour poser vos questions ^^
Je ne suis pas comptétent en java malheureusement!
Essayez
https://java.developpez.com/
c'est trés complet!
Utilisez le forum pour poser vos questions ^^
Salut,
Cordialement,
Dan
import java.util.GregorianCalendar;
.......
.....
// Méthode:
public static void anneBisextile(int annee)
{
GregorianCalendar gcal = new GregorianCalendar();
boolean b = gcal.isLeapYear(annee); // si annee bissextile, b = true
if (b)
{
// ANNEE BISSEXTILE ?
System.out.println("\nOUI " + annee + " est bissextile.");
}
else
{
// ANNEE NON BISSEXTILE ?
System.out.println("\nNON " + annee + " n'est pas bissextile.");
}
}
// exemples d'appels de la méthode:
int annee = 2010; // l'année doit être de type int
anneBisextile(annee);
annee = 2012;
anneBisextile(annee);
Cordialement,
Dan