Algorithme " Les branchements conditionnels "
Fermé
Jiko-java
Messages postés
186
Date d'inscription
dimanche 25 septembre 2016
Statut
Membre
Dernière intervention
22 juillet 2017
-
30 sept. 2016 à 04:25
Jiko-java Messages postés 186 Date d'inscription dimanche 25 septembre 2016 Statut Membre Dernière intervention 22 juillet 2017 - 3 oct. 2016 à 11:18
Jiko-java Messages postés 186 Date d'inscription dimanche 25 septembre 2016 Statut Membre Dernière intervention 22 juillet 2017 - 3 oct. 2016 à 11:18
A voir également:
- Algorithme " Les branchements conditionnels "
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Algorithme qui calcule le carré d'un nombre - Forum Algorithmes / Méthodes
- Code ascii algorithme - Guide
- Algorithme euromillion excel gratuit - Forum Algorithmes / Méthodes
2 réponses
Utilisateur anonyme
30 sept. 2016 à 07:14
30 sept. 2016 à 07:14
Bonjour
tu peux utiliser un swicth
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html
ou alors utiliser vraiment des dates
https://jmdoudoux.developpez.com/cours/developpons/java/chap-utilisation_dates.php
tu peux utiliser un swicth
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html
ou alors utiliser vraiment des dates
https://jmdoudoux.developpez.com/cours/developpons/java/chap-utilisation_dates.php
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
30 sept. 2016 à 08:01
30 sept. 2016 à 08:01
Bonjour,
Tu peux également réutiliser ton programme de comparaison de dates pour savoir si ta date est inférieure ou supérieure aux solstices et équinoxes.
Remarque : les dates des solstices et équinoxes varient d'une année sur l'autre. Voir le détail sur Wikipédia.
Tu peux également réutiliser ton programme de comparaison de dates pour savoir si ta date est inférieure ou supérieure aux solstices et équinoxes.
Remarque : les dates des solstices et équinoxes varient d'une année sur l'autre. Voir le détail sur Wikipédia.
Jiko-java
Messages postés
186
Date d'inscription
dimanche 25 septembre 2016
Statut
Membre
Dernière intervention
22 juillet 2017
30 sept. 2016 à 17:31
30 sept. 2016 à 17:31
Merci pour votre intervention , j'comprends votre réflexion donc l'idée serait de récupéré la classe "CompareDate" d'entré une date souhaité et selon la date il devra comparé les dates des solstices et équinoxes de façon à déterminé si la date se trouve dans un hiver boréal , ete boréal et le tout se trouvera dans plusieurs branchement conditionnels .... Mais j'ai du mal a le conceptualisé de plus comment Ma date CompareDate pourraient prendre en compte les solstices et les équinoxes
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
30 sept. 2016 à 18:16
30 sept. 2016 à 18:16
Très simplement en fait.
Simplifions en considérant que les solstices et équinoxes sont toujours le même jour d'une année sur l'autre.
Tu fais une comparaison de ta date avec le solstice d'été, si ta date est inférieure tu la compare avec l'équinoxe de printemps, sinon avec l'équinoxe d'automne.
Ces deux tests te permettent de découper l'année en 4 saisons, il faudra juste gérer le cas particulier de l'hiver après l'automne (semaine du 21 au 31 décembre).
Simplifions en considérant que les solstices et équinoxes sont toujours le même jour d'une année sur l'autre.
Tu fais une comparaison de ta date avec le solstice d'été, si ta date est inférieure tu la compare avec l'équinoxe de printemps, sinon avec l'équinoxe d'automne.
Ces deux tests te permettent de découper l'année en 4 saisons, il faudra juste gérer le cas particulier de l'hiver après l'automne (semaine du 21 au 31 décembre).
jiko-java
>
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
30 sept. 2016 à 21:07
30 sept. 2016 à 21:07
Je comprends l'idée de segmenté l'année en 4 partie et de se préoccupé que des cas ou les solstices et les équinoxe sont impliqué a savoir de Mars à juin , de juin à septembre , de septembre a décembre et de décembre à Mars , mais ce que j'ai du mal a comprendre C'est l'a manière de matérialisé mes branchements Puisque si on considère par exemple l'été on suppose qu'il y'a au total 94 jours , mais c'est jours là j'dois les convertir en mois auxquels ils appartiennent Fin voilà ce que j'ai du mal a comprendre c'est comment puis-je comparé par exemple cette date 25 / 8 et déterminé qu'il fait partit de la saison d'été et sachant que la saison d'été comporte 94 jours.
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
30 sept. 2016 à 22:14
30 sept. 2016 à 22:14
Peu importe le nombre de jours dans la saison. Il n'y a que 4 dates qui sont utiles, ce sont les équinoxes et solstices qui déterminent les moments où changent les saisons.
Puisque tu as déjà une méthode de comparaison des dates il faut t'en servir ce qui simplifie énormément le problème.
Par exemple, l'équinoxe de printemps tombe (en général) le 20 mars, donc si tu compares ta date au 20 mars et qu'elle est plus petite alors tu sais que c'est un jour d'hiver...
Puisque tu as déjà une méthode de comparaison des dates il faut t'en servir ce qui simplifie énormément le problème.
Par exemple, l'équinoxe de printemps tombe (en général) le 20 mars, donc si tu compares ta date au 20 mars et qu'elle est plus petite alors tu sais que c'est un jour d'hiver...
Oui je vois c'est ce que j'ai essayé de faire dans ma méthode CompareDate() du coup je me retrouve avec sa comme Branchement:
public static int compareDate(int jourDate1, int moisDate1, int anneeDate){ if(jourDate1 >= 21 && moisDate1 >= 3 && jourDate1 <=20 && moisDate1 <=6) return 2; if(jourDate1 >= 21 && moisDate1 >= 6 && jourDate1 <=20 && moisDate1 <=9) return 1; if(jourDate1 >= 21 && moisDate1 <= 9 && jourDate1 <=20 && moisDate1 <=12) return 0; return -1; }mais étant donné que ma méthode dois me return un entier j'étais forcé de retourné dans ma méthode main afin qu'il fasse correspondre les return et qu'il affiche la saison mais le problème c'est qu'a chaque fois que j'entre une date il m'affiche hiver :/ :
public static void main(String[] args) { System.out.println("Tests de la methode compareDate"); System.out.println("Entrez la date1 sous le format JJ/MM/AA"); int [] date1 = lireJJMMAA(); int comparaison = compareDate(date1[0], date1[1], date1[2]); if (comparaison == 2) System.out.println("Printemps"); if (comparaison == 1) System.out.println("Ete"); if (comparaison == 0) System.out.println("Automne"); else System.out.println("Hiver");
Modifié par baladur13 le 30/09/2016 à 17:34
Explications disponibles ici : ICI
Merci d'y penser dans tes prochains messages.
30 sept. 2016 à 18:13