Algorithme tableau.m'aidez SVP

imakh Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
 tobec -
Bonjour,
Une liste comportant N éléments (N<150) contient les âges des élèves d’une école. On voudrait connaître l’âge du plus jeune, du plus âgé et le nombre d’élèves dans chaque tranche d’âge (ex : 12 ont 14 ans, 20 ont 15 ans, etc. On suppose cette liste fournie au clavier, la première valeur lue étant le nombre d’élèves.
Exemple(10 élèves) : on fournit en entrée 10 12 13 14 11 13 15 12 13 10 14
on nous de mande de mettre le resulatat sous la forme
Résultat : Le plus jeune a 10 ans
Le plus âgé a 15 ans
10 ans : 1 élève(s)
11 ans : 1 élève(s)
12 ans : 2 élève(s)
13 ans : 3 élève(s)
14 ans : 2 élève(s)
merci d'avance.je compte sur vous
A voir également:

3 réponses

loupius
 
Tu trouveras de l'aide à l'adresse suivante:
http://www.commentcamarche.net/faq/sujet 10925 demander de l aide pour vos exercices sur ccm
Bon courage !
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Voici l'algorithme...

Tu créé un tableau "2" avec chaque tranche d'âge possible (entre 5 et 30 par exemple) que tu initialises à 0
Puis tu parcours ton tableau "1" et en récupérant l'âge tu incrémentes la bonne tranche d'âge dans "2"
Une fois tout ton tableau "1" parcouru, le minimum est la première tranche d'âge du tableau "2" à avoir une occurrence non nulle, et pour le maximum c'est la dernière...

Pour l'implémentation tu te débrouilleras, d'autant qu'on ne sait pas avec quel langage tu codes...
0
imakh Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
ecoutez.je suis en premier annee du genie elek et je viens de debuter les algorithmes.je ne sais po encore comment programmer.je vous montre ce ke j'ai fait
debut
debut
faire
afficher(entrer N);saisir(N)
tant que (N) INF150
finfaire
afficher(entrerE(1));saisir(E(!));
E(!)affecte max
E(!)affecte min
compteur affecte2
debut
faire
afficher(entrer E (compteur ));saisir E(compteur);
si max inferieur E(compteur) max affecte E(compteur
si min superieur E(compteur) min affecte E (compteur)
compteur affecte compteur + 1
tant que compteur inferieur a N
finfaire
la ou je bloque et apres avoir bien cogite,c'est comment faire
10 ans : 1 élève(s)
11 ans : 1 élève(s)
12 ans : 2 élève(s)
13 ans : 3 élève(s)
14 ans : 2 élève(s)
15 ans : 1 élève(s)

L'enonce
Exercice 3: Statistiques
Une liste comportant N éléments (N<150) contient les âges des élèves d’une école. On voudrait connaître l’âge du plus jeune, du plus âgé et le nombre d’élèves dans chaque tranche d’âge (ex : 12 ont 14 ans, 20 ont 15 ans, etc. On suppose cette liste fournie au clavier, la première valeur lue étant le nombre d’élèves.
Exemple(10 élèves) : on fournit en entrée 10 12 13 14 11 13 15 12 13 10 14
Résultat : Le plus jeune a 10 ans
Le plus âgé a 15 ans
10 ans : 1 élève(s)
11 ans : 1 élève(s)
12 ans : 2 élève(s)
13 ans : 3 élève(s)
14 ans : 2 élève(s)
15 ans : 1 élève(s)
0
tobec
 
a mon avis, il ne code pas dans un langage précis, d'après ce que j'ai compris c'est du speudo-langage, de l'algorithme pur quoi^^

voila ce que j'aurai fait moi:

Algo eleve

VAR
vI : entier
vJ : entier
vTab[1 a 150] : entier
v10 : entier
v11 : entier
v12 : entier
v13 : entier
v14 : entier
v15 : entier
Début

vI=1
Saisir ("Entrez le nombre d'éléve"), vTab(1)
vI=2

pour vI de 2 a vTab(1)+1
saisir("entrez l'age de l'éléve:"),vTab(vI)
vI=vI+1
fin pour

pour vJ de 2 a vTab(1)+1
selon vTab(vJ)
cas =10 :
v10=v10+1
cas =11 :
v11=v11+1
cas = 12 :
v12=v12+1
cas = 13
v13= v13+1
cas = 14
v14 = v14+1
cas = 15
v15 = v15+1
fin selon

afficher ("10 ans : " & v10)
afficher ("11 ans : " & v11)
afficher ("12 ans : " & v12)
afficher ("13 ans : " & v13)
afficher ("14 ans : " & v14)
afficher ("15 ans : " & v15)

fin algo

voila en gros, cela ne gère que les éléves agés de 10 a 15 ans, si tu veux gérer le reste, il suffit de rajouter des cas dans le selon. ca fait longtemps que j'ai pas fait d'algorithme comme ca, donc pardonne moi si la synthaxe n'est pas tout a fait exacte
0