Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parLucille Aubin Modifié depuis plus de 10 années
1
Les dates Recherche d’un algorithme pour déterminer si une année est bissextile ou non
2
Algorithme avec conditions simples (1/6)
2 Solutions : - Arbre équilibré - Arbre déséquilibré
3
Algorithme avec conditions simples (2/6)
Arbre équilibré : SI (a % 100 == 0) ALORS SI (a % 400 == 0) ALORS a est bissextile SINON a n'est pas bissextile FIN SI SINON SI (a % 4 == 0)
4
Algorithme avec conditions simples (3/6)
Arbre équilibré : vrai faux a % 100 = 0 vrai faux vrai faux a % 4 = 0 a % 400 = 0 Bissextile Non bissextile Bissextile Non bissextile
5
Algorithme avec conditions simples (4/6)
Arbre déséquilibré : SI (a % 4 == 0) ALORS SI (a % 100 == 0) SI (a % 400 == 0) ALORS a est bissextile SINON a n'est pas bissextile FIN SI SINON a est bissextile
6
Algorithme avec conditions simples (5/6)
Arbre déséquilibré : vrai faux a % 4 = 0 vrai faux Non bissextile a % 100 = 0 vrai faux a % 400 = 0 Bissextile Bissextile Non bissextile
7
Algorithme avec conditions simples (6/6)
Quand utiliser quel algorithme et pourquoi ???
8
Algorithme avec condition composée
SI (a % 4 == 0 && ((a % 100 != 0) || (a % 400 == 0))) ALORS a est bissextile SINON a n'est pas bissextile FIN SI
9
Les dates Déterminer le nombre de jours que comporte un mois (m) donné d’une année (a) donnée.
10
switch (b) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf ("31 jours\n"); break; case 4: case 6: case 9: case 11: printf ("30 jours\n"); case 2: if ((a % 4 == 0) && ((a % 100 != 0) || (a % 400 == 0))) printf ("29 jours\n"); else printf ("28 jours\n"); default: printf ("Le numero de mois est incorrect\n"); }
11
Les dates Demander le jour (j), le mois (m) et l’année (a) et déterminer si la date ainsi constituée est correcte.
12
printf ("Entrez l'annee : ");
scanf ("%d", &a); while (a < 1600 || a > 3000) { printf ("L'annee doit etre comprise entre 1600"); printf (" et Veuillez a nouveau "); printf ("entrez l'annee : "); } printf ("Entrez le mois : "); scanf ("%d", &m); while (m < 1 || m > 12) printf ("Donnez une valeur entre 1 et 12.\n"); printf ("Entrez a nouveau le mois : "); printf ("Entrez le jour : "); scanf ("%d", &j); while (j < 1 || j > 12) printf ("Donnez une valeur entre 1 et 31.\n"); printf ("Entrez a nouveau le jour : ");
13
switch (m) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf ("Date correcte\n"); break; case 4: case 6: case 9: case 11: if (j < 31) else printf ("Date incorrecte\n");
14
case 2: if ((a % 4 == 0) && ((a % 100 != 0) || (a % 400 == 0))) { if (j < 30) printf ("Date correcte\n"); else printf ("Date incorrecte\n"); } if (j < 29)
Présentations similaires
© 2025 SlidePlayer.fr Inc.
All rights reserved.