En fait j'ai du mal à résoudre la condition de la grande boucle DO WHILE pour la première amélioration, je comprends bien le principe de cette boucle mais après une vingtaine d'essais différents je ne trouve pas la solution.
Pour l'amélioration 2, j'ai essayé de la résoudre avec la boucle FOR mais sans succès je ne parviens pas à placer la boucle au bon endroit pour qu'elle fasse ce que je lui demande et c'est plutôt frustrant.
En espérant que quelqu'un puisse m'aider, toute aides ou conseils seront les bienvenus!
Je pense (mais ce n'est que mon avis) que si tu n'arrives pas a placer correctement la boucle do.. while, c'est que tu as du mal comprendre son fonctionnement, ou que tu ne vois pas vraiment comme ça doit se passer.
La boucle do.. while est une boucle while qui s’exécute au moins une fois, on l'utilise ici parce que ton utilisateur veut au moins faire une partie (sinon il aurait pas ouvert le programme xd), mais si il le souhaite il doit pouvoir rejouer, en langage naturel ca donne quelque chose comme
Faire
le jeu...
Tant que (utilisateur le veut)
A toi de voir comment tu traduis ça
Pour la partie 2, je pense que tu n'est pas partie sur la bonne boucle, on veut que l'utilisateur puisse essayer tant qu'il n'a pas fait 5 essaies et qu'il n'a pas trouver : la réponse est dans la phrase, je te laisse la chercher et la traduire
N’hésite pas a redemander si tu ne trouves vraiment pas, ou que tu as mal compris quelque chose
En espérant t'avoir aider
EDIT : Si tu fais cet exo, je suppose que tu suis le cours de OC
Malheureusement celui-ci n'est pas bon , et il est préférable d'en changer maintenant (d'autre t’expliquerons 100x mieux que moi pourquoi, et leurs explications sont trouvables en quelque recherche sur le forum)
en fait je comprends bien la boucle do while mais c'est la condition que je n arrive pas a traduire. (recommence si le joueur veut refaire une partie)
J'ai essayer avec des strings,des char et meme des int. Mais rien a faire il y a toujours quelque chose qui ne fonctionne pas, je n'arrive pas a égaler les deux variables, je pense que je ne choisis pas les bonnes variables.
Soit le code beug, soit la boucle ne fonctionne pas, j'ai besoin d'une solution svp.
Avec un tout petit peu de code (au minimum la boucle qui te pose problème), nous aurions beaucoup plus facile à t'aider (utilise le bouton en forme de < / > qui se trouve en haut de la zone d'édition pour rajouter ton code )
Mais, de manière générale, si la condition est "l'utilisateur veut continuer", la première chose que tu devras faire (à la fin de la boucle), c'est sans doute ... lui poser la question...
Tu devras alors récupérer sa réponse, sous la forme la plus adaptée à tes besoins, et en faisant attention au fait qu'il peut répondre "oui", "OUI", "O", "non", "NON", "N" ou ... n'importe quoi ("hello world", par exemple), et que tu devras réagir correctement à toutes ces possibilités (par exemple, en reposant la question dans le cas de "hello world").
Notes au passage que le SRP devrait t'inciter à créer une fonction particulière qui s'occupe de toute cette logique
Ce qui se conçoit bien s'énonce clairement. Et les mots pour le dire viennent aisément.Mon nouveau livre : Coder efficacement - Bonnes pratiques et erreurs à éviter (en C++)Avant de faire ce que tu ne pourras défaire, penses à tout ce que tu ne pourras plus faire une fois que tu l'auras fait
GitHub