Ecrire un programme Python

Fermé
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023 - 23 déc. 2022 à 16:33
Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 - 24 déc. 2022 à 17:31

Bonjour,

voici l'énoncé d'un petit programme que je dois écrire en Pyhton :

"Écrire un programme qui lit 3 nombres entiers,
et qui, si au moins deux d'entre eux ont la même valeur,
imprime cette valeur (le programme n'imprime rien dans le cas contraire)"

Quelqu'un peut m'aider à traduire la logique sur Python?

D'avance merci

Madiba

A voir également:

5 réponses

Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 919
23 déc. 2022 à 17:27
0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
23 déc. 2022 à 22:30

Merci pour ta reponse.

voici le code que j'essaie d'écrire si quelqu'un peut le corriger svp :

enoncé :

"Écrire un programme qui lit 3 nombres entiers,
et qui, si au moins deux d'entre eux ont la même valeur,
imprime cette valeur (le programme n'imprime rien dans le cas contraire)"
nombre = int(input())
nombre = int(input())
nombre = int(input())

if nombre and nombre == nombre:
    print(nombre)

Merci

0

Commence déjà avec des valeurs fixes.
 

nombre_1 = 24

nombre_2 = 9

nombre_3 = 15

.

Comment vas-tu vérifier que « au moins deux d'entre eux ont la même valeur » ?

Là ce n'est pas une histoire de programmation mais de logique.

.

Une fois tes conditions de tests établis tu pourras changer les valeurs de ces nombres afin d'avoir au moins une paire de même valeur et confirmer que ton code retourne le bon résulat.

.

Bon courage.

0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023 > ouplaboum
24 déc. 2022 à 15:21

Bonjour,

Avant tout merci d'avoir pris le temps de me répondre.

La logique je l'ai comprise. Mon problème c'est la transcription en code.

Je suis bloqué sur ce point. Comment écrire la condition IF pour que la comparaison se fasse dans n'importe quel ordre de saisi des nombres.

comment écrire la condition IF?

Soyez indulgent svp c'est le premier langage que j'apprends..

0
Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 919
24 déc. 2022 à 08:31

Tout d'abord, merci de sélectionner Python dans la fenêtre d'extrait de code pour avoir une présentation lisible.

Avant de tester ce que te propose ouplaboum, revenons un instant sur ton code.

Je te pose 3 questions en commentaires ;

#supposons que tu veuilles saisir 1, 2 et 3

nombre = int(input()) #que vaut nombre après cette ligne?
nombre = int(input()) #que vaut nombre après celle-ci?
nombre = int(input()) #et après celle-là ?

if nombre and nombre == nombre:
    print(nombre)

Vois tu le problème?

Comprends tu comment ouplaboum l'a réglé ?


0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
24 déc. 2022 à 15:26

Je comprends pas ou tu veux en venir. Il s'agit de comparer les nombres saisis : 3 nombre. Et si parmi ces 3 nombres, deux d'entre eux sont identique alors on imprime le nombre commun.

voilà comment je comprends l'énoncé.

Merci de ton aide.

0
Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 919
24 déc. 2022 à 15:36

J'essaye de te faire comprendre ton erreur de départ.
Bon alors, imaginons qu'une variable est une boite qui ne peut contenir qu'une seule valeur.

Ta première ligne met une valeur dans la boite.

Ta seconde ligne, vide la boite et y met une seconde valeur

Ta 3eme ligne, vide à nouveau la boite, et y met une 3eme valeur.

Du coup, tu demandes 3 nombres, mais tu n'en stocke qu'un seul.

Tu ne peux rien comparer par la suite, puisque tu n'as de valeurs à comparer


0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
24 déc. 2022 à 16:01

Merci beaucoup dans tous les cas de vouloir m'aider. Je vous en suis reconnaissant. Sorry si je ne percute pas ce que vous essayez de me faire comprendre.

Voici mon nouveau code :

(A la place de saisir 3 conditions IF, il n'y a pas une façon plus simple ?)

sauf que quand je saisis 3 nombres identiques, Pycharm m'imprime les 3 nombres

Faut il créer une variable qui va servir de comparaison? Je ne vois pas comment je peux isoler une variable qui se compare au nombre saisi?

Encore Merci.

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 919
24 déc. 2022 à 16:27

Pour poster un code, il faut faire comme décrit là 

https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

Le code sur ta capture répond à ton énoncé.

Et pour que cela soit possible, il te faut bien stocker chaque valeur dans une variable propre.

Avec 3 valeurs, c'est la meilleure façon de faire.

L'autre façon utilise un type de variable qui permet de stocker plusieurs valeurs (une liste, un tableau, etc..) ensuite il faut faire 2 boucles, la première sélectionne une valeur et la seconde la compare aux autres valeurs.

D'une part, je suppose que tu n'as pas encore appris ces "trucs", sinon tu aurais été tentée de t'en servir, ou peut-être même que l'énoncé t'y aurait contraint.

D'autre part, c'est plus compliqué à écrire, car il ne faut pas comparer un nombre avec lui-même et tant qu'à faire ne pas faire comparer un nombre avec ceux qui s'y sont déjà comparés.

Et au final, ça prends quelques lignes à écrire.

Au final, pour 3 valeurs, ça ne vaut pas le coup.


0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
24 déc. 2022 à 16:37

Merci pour ton retour et les explications.

je ne savais pas qu'il y avait les regles pour poster son code sur le site. Merci et j'en prends bonne note.

Revenons à mon code et si je t'ai bien compris, mon code serait bon? (Non je n'ai pas encore appris la façon de stocker plusieurs valeurs. j'essaie déjà d'appréhender les bases, mais merci pour l'infos).

Si mon code est bon pourquoi Pycharm imprime 3 fois le nombre lorsque je saisis 3 fois le meme nombre?

au plaisir de te lire?

0
Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
24 déc. 2022 à 17:20

Code validé avec persistance et votre aide, merci beaucoup.

Il fallait mettre des sous conditions à IF soit :

IF conditions:

instruction

ELIF conditions :

instructions

Etc.

Merci pour votre aide.

Excellent fetes de fin d'année

0
Whismeril Messages postés 19144 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 septembre 2024 919 > Madibajamal Messages postés 14 Date d'inscription vendredi 23 décembre 2022 Statut Membre Dernière intervention 6 janvier 2023
24 déc. 2022 à 17:31

Ha oui, je n'avais pas fair attention que tu n'avais pas mis elif.

0