Se connecter / S'enregistrer

Résolu [BTS] Besoin d'aide en algorithme

Solutions (12)
Tags :
  • Réseau
  • Programmation
|
Bonjour,

j'ai un exercice d'algorithme à faire pour mon BTS, mais je n'y arrive pas ^^" :( 

voici l'énoncé :

"écrire l'algorithme qui permet de saisir des notes pour afficher la moyenne, ainsi que la note la plus haute et le plus basse.

Pour chaque note saisie, il faudra controler qu'elle se situe bien entre 0 et 20. Dans le cas contraire, la saisie sera redemandée.

Entre chaque saisie, on posera : "voulez vous continuer ? (Y/N) et on arretera la saisie lorsque l'utilisateur met "N". La encore, il faudra controler la saisie. Si l'utilisateur saisit autre chose que Y ou N il faudra recommencer la saisie de la réponse."

là je sèche totalement ^^'''

merci d'avance de votre aide !

Jennifer
Contenus similaires
Meilleure solution
partage
|
Je vais t'aider dans mon langage dans ce cas, et toi tu vas essayer de le traduire :
i <= 0
somme <= 0
note <=0

Répéter
Afficher "Voulez-vous continuer ?"
Lire Réponse Y/N
Répeter
Afficher "Quelle note ?"
Enregistrer la note
Jusqu'à tant que la note soit comprise entre 0 et 20
Si note<min
Alors min <- note
FinSi
Si note>max
Alors max <- note
FinSi
somme <- somme + note
Jusqu'à tant que la réponse est Y

Afficher("La moyenne est de :",moyenne)
Afficher("La meilleure note est :", max)
Afficher("La moins bonne est :" ,min)



Je croyais que tu étais en BTS Informatique ^^'
Essaie de comprendre cet algo, j'avais mal lu l'énoncé pour ma part.
Ici, on ne te demande pas le nombre d'élève...
La logique se travaille, si tu aimes tu peux réussir ;) 

Si jamais tu as un soucis, tu peux me MP ;) 
Si tu ne comprends pas cet algo, je peux te faire de commentaire pour que tu analyses mieux. Tu peux aussi t'entrainer à améliorer l'algo (on appelle ça optimiser), ce qui sera encore mieux !
  • Commenter cette solution |
Score
0
òh
òi
|
Meilleure réponse sélectionnée par Jennifer699.
  • Commenter cette réponse |
Score
0
òh
òi
|
merci =) !

de même pour toi !
  • Commenter cette réponse |
Score
0
òh
òi
|
ah ok !
Je ne connaissais pas du tout ARLE ^^'
Perso je vais en Dev donc bon, et j'aime pas le réseau :p 
Mais ça n'empéche que j'aide ceux qui y vont apparemment ;) 

Oui et c'est un mixte du tien et du mien, enfin, celui dans lequel j'ai appris ^^'

Bon courrage pour tes études ;) 
  • Commenter cette réponse |
Score
0
òh
òi
|
ah je comprends mieux dans ton langage ^^ !

merci beaucoup !

sinon oui je suis en BTS Informatique 1ère année, pour l'an prochain c'est l'option arle administrateur réseaux que je vais prendre =)

merci de ton aide !
  • Commenter cette réponse |
Score
0
òh
òi
|
Debut
somme <- 0
note <- 0
max <- 0
min <- 20
Saisir (NbEleves)
Pour compteur de 1 à NbEleves
Faire Afficher ("entrer la ",i,"ème note" )
TANTQUE rep = "O" FAIRE
Saisir(note)
Si note<min
Alors min <- note
FinSi
Si note>max
Alors max <- note
FinSi
somme <- somme + note
Compteur<- Compteur+1
AFFICHER "Autre note à traiter Y/N ? "
SAISIR rep
FIN TANT QUE
FinPour
moyenne <- somme/nbEleves
Afficher("La moyenne est de :",moyenne)
Afficher("La meilleure note est :", max)
Afficher("La moins bonne est :" ,min)
Fin

je sais pas trop effectuer une trace de mon algo ^^' c'est pour ça que c'est un peu confu pour moi.

L'an prochain je voudrais faire ARLE. Et je fais de l'algo depuis octobre, mais c'est une matière ou j'ai du mal. C'est surtout la logique qui me manque.
  • Commenter cette réponse |
Score
0
òh
òi
|
Mais t'en fais pas, l'erreur est humaine, surtout quand on apprend (je suis moi-même en BTS Informatique...)...

Par contre j'ai pas la même syntaxe que toi niveau Algo, et c'est assez difficile de comprends la structure de ta boucle...

Bref, ici, ta boucle va faire ceci :

Première fois, on ne rentre même pas dans la boucle, note n'a pas été initialisé... <== à corriger.

Et après, si on rentre :
- on demande une note, par exemple je rentre 15
- note inférieur à 20, donc je remplace min par 15
- note supérieur à 0, je remplace max par 15
je reboucle...

Est-ce vraiment ce que tu veux ? (moyenne et somme pas pris en compte là...

Tu sais effectuer une trace de ton algo ?
C'est simple, c'est ce que je viens de faire... Il suffit de réfléchir avec ta façon d'écrire, le transformer en algo et puis tester si rien n'a changer...



Encore un petit effort, t'y es presque !!!


Tu veux faire dev ou reseau ? ça fait longtemps que tu fais de l'algo ?
  • Commenter cette réponse |
Score
0
òh
òi
|
Debut
somme <- 0
max <- 0
min <- 20
Saisir (NbEleves)
Pour compteur de 1 à NbEleves
TantQue note > 0 et note <20
Faire Afficher ("entrer la ",i,"ème note" )
Saisir(note)
Si note<min
Alors min <- note
FinSi
Si note>max
Alors max <- note
FinSi
FinTantQue
somme <- somme + note
FinPour
moyenne <- somme/nbEleves
Afficher("La moyenne est de :",moyenne)
Afficher("La meilleure note est :", max)
Afficher("La moins bonne est :" ,min)
Fin

comme ceci ? ^^' je suis désolée ^^'
  • Commenter cette réponse |
Score
0
òh
òi
|
Juste la boucle...

En fait, dit toi une chose, qu'est-ce que tu veux répéter s'il y a une erreur ?

C'est plutôt l'affichage et la saisie de la note qu'il faut mettre répéter...
  • Commenter cette réponse |
Score
0
òh
òi
|
merci de m'aider =) !!

voici ce que j'ai refait :



Debut
somme <- 0
max <- 0
min <- 20
Saisir (NbEleves)
Pour compteur de 1 à NbEleves
Faire Afficher ("entrer la ",i,"ème note" )
Saisir(note)
TantQue note > 0 et note <20
Si note<min
Alors min <- note
FinSi
Si note>max
Alors max <- note
FinSi
FinTantQue
somme <- somme + note
FinPour
moyenne <- somme/nbEleves
Afficher("La moyenne est de :",moyenne)
Afficher("La meilleure note est :", max)
Afficher("La moins bonne est :" ,min)
Fin

je dis des bêtises ? ^^''
  • Commenter cette réponse |
Score
0
òh
òi
|
C'est très bien, sauf que le min sera toujours 0... Tu as deux façon pour qu'il change, soit mettre min à 20, ou mettre min à la première note tapé.

Ensuite
Il te manque une boucle (Tant Que ...) pour vérifier les notes (>0 et <20)...


Fait déjà ça et je vais t'aider ;) 
  • Commenter cette réponse |
Score
0
òh
òi
|
pour l'instant j'ai fais ceci

j'ai fais ceci :

Debut
somme <- 0
max <- 0
min <- 0
Saisir (NbEleves)
Pour compteur de 1 à nbEleves
Faire Afficher ("entrer la ",i,"ème note")
Saisir(note)
Si note<min
Alors mon <- note
FinSi
Si note>max
Alors max <- note
FinSi
somme <- somme + note
FinPour
moyenne <- somme/nbEleves
Afficher("La moyenne est de :",moyenne)
Afficher("La meilleure note est :", max)
Afficher("La moins bonne est :" ,min)
Fin
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS