Upload
nellis
View
65
Download
0
Embed Size (px)
DESCRIPTION
Algo-Prog e n Ada. TD2. 2 IMACS. Romaric GUILLERM. [email protected]. BILAN du TD1. Une démarche : Structures de données Prog . principal + spéc . des sous- prog . Sous-programmes Tableau contraint :. définition. déclaration. attributs. BILAN du TD1. in. out. procédure. in out. - PowerPoint PPT Presentation
Citation preview
BILAN du TD1 Une démarche :
1. Structures de données2. Prog. principal + spéc. des sous-prog.3. Sous-programmes
Tableau contraint :définition
déclaration
attributs
BILAN du TD1 Différents sous-programmes :
Procédure
Fonction
Quelques algorithmes simples avec l’utilisation de boucles pour parcourir un tableau
procédure
in out
in out
TD2 Suivi de la même démarche que dans le TD1
:
1. Structures de données définir les constantes, types et sous-types.
2. Programme principal, avec spécification des sous-programmes
3. Sous-programmes
TD2 Structure de données :
Un élève : type article ! Une classe : tableau non contraint
Inconvénients : - on doit connaître le nombre d’élèves à l’avance
- ajout/suppression d’élèves impossible(sans déclarer un autre tableau)
Programme principal :DEBUT
nb_eleve?
Déclarer le tableau
Saisie_des_élèves(tab)
Afficher les choix possible
0 1 2 3
FINTrier_par_note(t
ab)Trier_par_nom(tab
) Afficher(tab)
TD2
Choix?
Programme principal :TD2
Spécification des sous-programmes :
…… saisir_classe(…)
…… afficher_classe(…)
…… trier_par_note(…)
…… trier_par_nom(…)
TD2
Sous-programme de tri par note :
TD2
5 3 7 6I = 1 :
1 2 3 4 7 3 5 6
1 2 3 4
7 3 5 6I = 2 :
1 2 3 4 7 6 5 3
1 2 3 4
7 6 5 3I = 3 :
1 2 3 4 7 6 5 3
1 2 3 4
Sous-programme de tri par note d’un tableau d’élèves :
Pour chaque indice i1 du tableau (sauf pour l’indice de la dernière case) On cherche l’indice i2 de l’élève qui a la plus forte note dans le reste du
tableau à partir i1 On échange les positions des élèves contenus aux indices i1 et i2
Fin de la boucle pour
Sous-sous-programme de recherche de l’indice de l’élève avec la plus forte note dans un tableau d’élèves :
On initialise i_max à l’indice de la première case Pour chaque indice i du tableau (sauf pour l’indice de la première case)
Si la note de l’élève à la position i est plus forte que la note de l’élève à la position i_max alors : On actualise i_max avec la valeur de i
Fin du si Fin de la boucle pour On retourne i_max comme résultat
TD2
Sous-programme de tri par note :
TD2
Sous-programme de tri par nom :
TD2