Bonjour,
J'aimerai avoir de l'aide concernant cet exercice (structures conditionnelles)
Voici l'énoncé : Rédiger un programme qui constitue en entrée trois nombres entiers mis à disposition par l'utilisateur, ensuite réaliser la phrase suivante : le plus grand nombre des trois nombres est : ...
Voici le programme que j'ai essayé de réaliser, veuillez m'aider s'il vous plaît :
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if premier_nombre_entier>=100:
print('Le premier nombre est le plus grand nombre')
else:
print('le premier nombre est pas le plus grand nombre')
if deuxième_nombre_entier>=100:
print('Le deuxième nombre est le plus grand nombre')
else:
print('le deuxième nombre est pas le plus grand nombre')
Merci !
bonjour,
pourquoi compares -tu à 100 ? je ne vois rien dans ton énoncé qui parle d'une limite à 100 ...
on va essayer de réflechir sans python, OK ?
je prends trois cartes. tu dois dire quelle est la plus forte. Je suis d'accord pour te les montrer, mais seulement une à une.
comment ça va se passer ?
tu vas d'abord voir la 1ère.
ensuite tu vas me demander la 2ème.
et là, qu'est ce que tu fais ?
non, pas tout de suite...
(tu pourrais faire ça, mais ensuite tu vas devoir les comparer toutes les trois.. et si plus tard, je te dis que j'en ai pris 10, ça va être compliqué).
tu vas d'abord comparer les deux cartes que tu as vues, et tu ne gardes que la plus forte. OK ?
puis je te montre la 3ème carte. Qu'est ce que tu fais ?
Je compare les 2 cartes, je prends la plus forte.
Je demande la 3ème carte puis je compare avec celle que j'ai retenu pour pouvoir comparer avec la 3ème carte.
c'est ça !
on peut écrire ça en langage naturel :
si deuxième > premiere alors
plusforte = deuxième
sinon plusforte = première.
Si troisième > plus forte alors
plusforte = troisième.
afficher ("la carte la plus forte vaut : " plusforte )
tu vois ?
sais tu à présent adapter à ton exercice?
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
print('deuxième_nombre_entier= le plus grand nombre')
else:
print('premier_nombre_entier= le plus grand nombre')
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
jusque là, c'est OK. Mais tu ne peux encore rien afficher à ce stade, tu n'as comparé que deux nombres..
tu as dit toi même "je compare et je garde la plus forte"
et j'avais traduit :
si deuxième > premiere alors
plusforte = deuxième
sinon plusforte = première.
en vert, je garde la plus forte.
vas y corrige ton programme.
je ne sais pas où je dois écrire " plusforte = deuxième
sinon plusforte = première ". J'écris cela dans print (...) ?
non pas dans le print.
le print, c'est "afficher" .
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand = deuxième_nombre_entier
else :
plusgrand = premier_nombre_entier
tu vois ?
à présent, compare avec le 3ème nombre, tout comme je l'ai fait avec les cartes.
Si troisième > plus forte alors
plusforte = troisième.
à toi !
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand=deuxième_nombre_entier
else:
plusgrand =premier_nombre_entier
if
troisième_nombre_entier>=premier_nombre_entier:
plusgrand=troisième_nombre_entier
else:
plusgrand =deuxième_nombre_entier
if
troisième_nombre_entier>=premier_nombre_entier:
plusgrand=troisième_nombre_entier
else:
plusgrand =deuxième_nombre_entier
pourquoi compares tu le troisieme et le premier ?
on n'a pas dit ça.
tu as dit "je compare la plus forte avec la troisième".
C'est si simple de suivre exactement le schéma que tu as défini avec les 3 cartes... Pourquoi compliquer ?
Si troisième > plus forte alors
plusforte = troisième.
tu y es presque.
Quand tu auras fini, je te montrerai une autre façon de faire, avec des if imbriqués.
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand=deuxième_nombre_entier
else:
plusgrand =premier_nombre_entier
if
troisième_nombre_entier>=deuxième_nombre_entier:
plusgrand=troisième_nombre_entier
else:
plusgrand =deuxième_nombre_entier
Yahiko, je crois que tu ne lis pas bien ce que je t'écris.
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand=deuxième_nombre_entier
else:
plusgrand =premier_nombre_entier
à ce stade, le plus grand est rangé dans "plusgrand".
ensuite tu regardes le troisième nombre et tu dois le comparer au plus grand, pas au 1er ni au 2ème, mais au plus grand.
donc il faut écrire
if troisième_nombre_entier>=plusgrand :
plusgrand=troisième_nombre_entier
et voilà.
enfin, tu affiches plusgrand.
ca donne
premier_nombre_entier=int(input('Entrez le premier nombre entier :'))
deuxième_nombre_entier=int(input('Entrez le deuxième nombre entier :'))
troisième_nombre_entier=int(input('Entrez le troisième nombre entier :'))
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand=deuxième_nombre_entier
else:
plusgrand =premier_nombre_entier
if troisième_nombre_entier>=plusgrand :
plusgrand=troisième_nombre_entier
print('Le plus grand nombre des trois est : ' plusgrand)
OK ?
pour une solution simple aussi avec des if imbriqués :
if premier > deuxième :
if troisième > premier :
print ('le plus grand est : ' troisième)
else :
print ('le plus grand est : ' premier)
else :
if troisième > deuxième :
print ('le plus grand est : ' troisième)
else :
print ('le plus grand est : ' deuxième)
Tu peux visualiser ça avec 3 cartes et un post-it.
Sur le post-it, on écrit le mot 'PlusGrand'
On prend 2 cartes, on les compare. (on sait comparer 2 éléments, avec l'instruction if a>b mais on est limité à 2 éléments). Quand on compare les 2 premières cartes, on colle le post-it sur celle qui est la plus forte.
Ca correspond à ces instructions :
if deuxième_nombre_entier>=premier_nombre_entier:
plusgrand=deuxième_nombre_entier
else:
plusgrand =premier_nombre_entier
Traduction :
Si la 2ème carte est la plus forte :
Je colle le post-it sur la 2ème carte
sinon
Je le colle sur la 1ère carte.
Là, on a collé le post-it sur une carte. Et l'autre carte, celle qui n'a pas le post-it, on peut la jeter.
Pour la suite, on ne parle plus de première-carte ni de deuxième-carte, mais uniquement de la-carte-qui-a-le-post-it.
Ensuite, on retourne la 3ème carte.
Et on dit : Je compare cette 3ème carte avec celle qui a le post-it :
if troisième_nombre_entier>=plusgrand :
Et si besoin, je déplace le post-it, pour le coller sur la 3ème carte.
if troisième_nombre_entier>=plusgrand :
plusgrand=troisième_nombre_entier
Informatiquement parlant, le parallèle avec le post-it n'est pas terrible ; ici c'est applicable, mais ce n'est pas systématique, loin de là.
je ne comprends pas ta question :
tu as écrit 3 lignes avec l'instruction "input" : pour chacune, tu as donné un nombre.
tu as écrit 1 puis 2 puis 3, tu devrais essayer avec 40, 12 et 33 pour voir..
ton programme t'a répondu que le plus grand des nombres que tu as donnés, c'était 3.
C'est ce que tu voulais, n'est ce pas ?
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :