AP11 Algorithmique, Langage C et Structures de Données
2.14 Echange du contenu de deux variables - . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3 La programmation structurée 59
3.1 Décomposer pour résoudre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.2 Fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3 Désignation/Appel d’une fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.4 Procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.5 Désignation/Appel d’une procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6 La fonction principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4 Un exemple de décomposition 66
4.1 Une pyramide de chiffres - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.2 afficherPyramide - afficherLigne - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3 afficherEspaces - afficherSuiteCroissante - . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.4 afficherSuiteDécroissante - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
TD1-TD2 71
Exercices validés durant les TD1-TD2 72
1.1 Un petit calcul de partage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
1.2 L’année bissextile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.3 Le temps plus une seconde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.4 Le nombre de jours de congés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.5 Calcul de n! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.6 Nombres premiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.7 Quotient et reste d’une division entière . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
1.8 Recherche du zéro d’une fonction par dichotomie . . . . . . . . . . . . . . . . . . . . . . . 74
1.9 Suite de Fibonacci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
1.10 Intégration par la méthode des trapèzes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
1.11 Nombres parfaits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
1.12 Racines d’une équation du second degré . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
1.13 Affichage du développement de l’expression (x+y)n. . . . . . . . . . . . . . . . . . . . . 75
C3 77
Objectifs du C3 78
Contenu du C3 79
1 Les types définis explicitement 80
1.1 Le type énumération . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
1.2 Les types composites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
1.3 Les tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
1.4 Tableau à une dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
1.5 Tableau à deux dimensions - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
1.6 Les structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2 Les tris itératif 87
2.1 Spécification du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.2 Tri par sélection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.3 Tri par insertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.4 Tri à bulles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
GET / INT / INF — Gil Protoy — Août 2006 — Télécom INT — 1ère année 4