Bonjour j'ai une question concernant le cours "Découvrez le fonctionnement des algorithmes" et plus particulièrement le chapitre "Communiquez avec un ordinateur" de la première partie du cours.
Au niveau de l'exercice où l'on doit écrire un algorithme de déplacement pour le petit renard le corrigé met ceci dans la quatrième étape :
Alors que dans les consignes de l'exercice il est dit qu'un déplacement à droite apporte 70 point (contre 25 dans le corrigé ?) un déplacement en haut 25 point (contre 70 dans le corrigé aux troisièmes déplacement ?) etc...
Quelque chose m'échappe ou bien est ce une erreur dans le corrigé. Si quelqu'un pourrait éclairer ma lanterne je lui en serai très reconnaissant car ça me perturbe.
Je ne suis pas ce cours et je n'ai pas le lien. Pourrais-tu faire un copier-coller de l'énoncé? Il y a deux déplacements vers le haut et deux vers le bas avec des scores différents. Est-ce qu'il y a une pénalité à faire deux déplacements dans le même sens? D'après l'énoncé, comment le ferais-tu? J'ai des doutes sur la validité du corrigé.
Et pourquoi réinitialiser le score à la fin puisqu'il ne te sert plus?
En fait, il faut plutôt dire de retourner le score à celui qui a appelé ta fonction.
- Edité par PierrotLeFou 24 février 2023 à 19:16:38
Le Tout est souvent plus grand que la somme de ses parties.
Il y a une inversion dans les commentaires et le déplacement passer en L13 devrait être 50 - 25 au lieu de 25 - 25.
Je ferais :
Algorithme déplacement
Variable
déplacement ← 0
score ← 0
Début
Déplacement en haut
maj_déplacement_score(déplacement, score, 25)
Déplacement en haut
maj_déplacement_score(déplacement, score, 25)
Déplacement à droite
maj_déplacement_score(déplacement, score, 70)
Déplacement à gauche
maj_déplacement_score(déplacement, score, 50 - 25)
Déplacement en bas
maj_déplacement_score(déplacement, score, 90 - 25)
Déplacement en bas
maj_déplacement_score(déplacement, score, 90 - 25)
réintialiser_score(score)
Fin
PS : merci d'utiliser le bouton code </> pour insérer du code sur le forum, même du pseudo code, c'est plus facile à lire et on sait mieux se repérer avec le numéro des lignes.
@pierrot
>> Et pourquoi réinitialiser le score à la fin puisqu'il ne te sert plus?
c'est une règle du jeu, si le perso qui est déplacé sur la carte de jeu revient à la case départ (ce qui est le cas), le score est réinitialisé à 0.
>> Est-ce qu'il y a une pénalité à faire deux déplacements dans le même sens?
Non mais 25 points en moins si on repasse sur une même case.
>> Ou alors personne dans le "staff" ne tient compte des remarques du forum?
Si par "staff" vous voulez dire les modérateurs du forum => Nous n'avons en aucune façon la possibilité de modification des cours.
Si par "staff" vous voulez dire l'équipe du site qui s'occupe des cours => La réponse est oui car plus aucune personne d'openclassrooms, à ma connaissance, ne fréquente le forum.
Je trouve déplorable qu'un "prof" ne s'intéresse pas aux commentaires de ses "élèves"! Mais bon passons il y a d'autres MOOC sur internet.
voici la partie qui pose pb, c'est un copier coller mis en forme :
*
1 Algorithme déplacement 2 Variable 3 déplacement ← 0 4 score ← 0 5 Début 6 Déplacement en haut 7 Déplacement en haut 8 Déplacement à droite 9 Déplacement à gauche 10 Déplacement en bas 11 Déplacement en bas 12 Fin
Consignes
Reprenez le pseudo-code ci-dessus* et adaptez-le en fonction des consignes suivantes :
Un déplacement incrémente la variable déplacement de 1.
Incrémentation du score en fonction du sens de déplacement :
à gauche : 50 points / le nombre de déplacements
à droite : 70 points / le nombre de déplacements
en haut : 25 points / le nombre de déplacements
en bas : 90 points / le nombre de déplacements
Si le joueur passe à nouveau sur une même case, il faut décrémenter le score de 25 points.
Si le joueur revient à la case Départ, le score est réinitialisé à 0.
Votre objectif :
Créez l’algorithme qui prend en compte l’ensemble des consignes ci-dessus. N’hésitez pas à écrire à côté de chaque instruction la valeur courante des variables déplacement et score .
Créez une fonction qui permet de mettre à jour les variables déplacement et score .
Créez une fonction qui permet de réinitialiser la variable score à 0.
Adaptez votre algorithme avec les deux nouvelles fonctions.
Vérifiez votre travail
Voici les quatre étapes à suivre pour obtenir le résultat final de cet exercice : Première étape : création de l'algorithme de déplacement
1 Algorithme déplacement 2 Variable 3 déplacement ← 0 4 score ← 0 5 Début 6 Déplacement en haut 7 déplacement ← déplacement + 1 8 score ← score + 25 9 Déplacement en haut 10 déplacement ← déplacement + 1 11 score ← score + 25 12 Déplacement à droite 13 déplacement ← déplacement + 1 14 score ← score + 70 15 Déplacement à gauche 16 déplacement ← déplacement + 1 17 score ← score + 50 - 25 (Le joueur revient sur une case) 18 Déplacement en bas 19 déplacement ← déplacement + 1 20 score ← score + 90 - 25 (Le joueur revient sur une case) 21 Déplacement en bas 22 déplacement ← déplacement + 1 23 score ← score + 90 - 25 (Le joueur revient sur une case) 24 score ← 0 (Le joueur est revenu à la case départ donc score = 0) 25 Fin
Seconde étape : création de la fonction de mise à jour des variables déplacement et score
1 Fonction maj_déplacement_score(déplacement, score, point_de_déplacement) 2 Début 3 déplacement ← déplacement + 1 4 score ← score + (point_de_déplacement / déplacement) 5 Fin
Troisième étape : création de la fonction de réinitialisation du score
1 Fonction réintialiser_score(score) 2 Début - 3 score ← 0 4 Fin
Quatrième étape : adaptation de l'algorithme avec les deux fonctions précédentes
1 Algorithme déplacement 2 Variable 3 déplacement ← 0 4 score ← 0 5 Début 6 Déplacement à droite 7 maj_déplacement_score(déplacement, score, 25) 8 Déplacement en haut 9 maj_déplacement_score(déplacement, score, 25) 10 Déplacement en haut 11 maj_déplacement_score(déplacement, score, 70) 12 Déplacement en bas 13 maj_déplacement_score(déplacement, score, 25 - 25) 14 Déplacement en bas 15 maj_déplacement_score(déplacement, score, 90 - 25) 16 Déplacement à gauche 17 maj_déplacement_score(déplacement, score, 90 - 25) 18 réintialiser_score(score) 19 Fin
c'est donc ce dernier algorithme qui pose question...
- Edité par Jeffans 23 juin 2023 à 14:21:39
Interrogation sur le cours sur les algorithmes
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.