La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Les dates Recherche dun algorithme pour déterminer si une année est bissextile ou non.

Présentations similaires


Présentation au sujet: "Les dates Recherche dun algorithme pour déterminer si une année est bissextile ou non."— Transcription de la présentation:

1 Les dates Recherche dun 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) ALORS a est bissextile SINON a n'est pas bissextile FIN SI

4 Algorithme avec conditions simples (3/6) Arbre équilibré : a % 100 = 0 a % 400 = 0 a % 4 = 0 Bissextile Non bissextile BissextileNon bissextile vrai faux

5 Algorithme avec conditions simples (4/6) Arbre déséquilibré : SI (a % 4 == 0) ALORS ALORS SI (a % 100 == 0) SI (a % 100 == 0) ALORS ALORS SI (a % 400 == 0) SI (a % 400 == 0) ALORS a est bissextile ALORS a est bissextile SINON a n'est pas bissextile SINON a n'est pas bissextile FIN SI FIN SI SINON a est bissextile SINON a est bissextile FIN SI FIN SI SINON a n'est pas bissextile SINON a n'est pas bissextile FIN SI

6 Algorithme avec conditions simples (5/6) Arbre déséquilibré : a % 100 = 0 a % 400 = 0 a % 4 = 0 Bissextile Non bissextile vrai faux vrai Bissextile faux

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))) ((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é dune 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"); break; case 2:if ((a % 4 == 0) && ((a % 100 != 0) || (a % 400 == 0))) ((a % 100 != 0) || (a % 400 == 0))) printf ("29 jours\n"); else printf ("28 jours\n"); break;default: printf ("Le numero de mois est incorrect\n"); }

11 Les dates Demander le jour (j), le mois (m) et lannée (a) et déterminer si la date ainsi constituée est correcte.

12 printf ("Entrez l'annee : "); scanf ("%d", &a); while (a 3000) { printf ("L'annee doit etre comprise entre 1600"); printf (" et Veuillez a nouveau "); printf ("entrez l'annee : "); scanf ("%d", &a); } printf ("Entrez le mois : "); scanf ("%d", &m); while (m 12) { printf ("Donnez une valeur entre 1 et 12.\n"); printf ("Entrez a nouveau le mois : "); scanf ("%d", &m); } printf ("Entrez le jour : "); scanf ("%d", &j); while (j 12) { printf ("Donnez une valeur entre 1 et 31.\n"); printf ("Entrez a nouveau le jour : "); scanf ("%d", &j); }

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) printf ("Date correcte\n"); else printf ("Date incorrecte\n"); break;

14 case 2: if ((a % 4 == 0) && ((a % 100 != 0) || (a % 400 == 0))) ((a % 100 != 0) || (a % 400 == 0))){ if (j < 30) printf ("Date correcte\n"); else printf ("Date incorrecte\n"); }else{ if (j < 29) printf ("Date correcte\n"); else printf ("Date incorrecte\n"); }}


Télécharger ppt "Les dates Recherche dun algorithme pour déterminer si une année est bissextile ou non."

Présentations similaires


Annonces Google