Lignes ne fonctionnent pas

Résolu
jcm19mjc - Modifié le 16 oct. 2023 à 17:46
mamiemando Messages postés 33088 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 30 avril 2024 - 20 oct. 2023 à 03:26

Bonjour, je suis débutant.

Voici 7 lignes de programme :

x = int(input("tapez votre âge :"))
y = int(input("tapez autre âge :"))
print ("x : ", x ,("et"), y, "ans")
print ("division :"), x / y
d = int(x / y)
print ("d égal à :"), d
print ("divise en chiffre entier :"), d

Si je lance le programme, les 4 dernières lignes n’affichent pas les résultats.

Si j’exécute séparément les 4 derniers lignes, les résultats s’affichent ?

Merci de votre aide.


Windows / Firefox 118.0

2 réponses

Whismeril Messages postés 19036 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 2 mai 2024 931
16 oct. 2023 à 11:42

Bonjour 

pour poster ton code, il faut faire comme décrit là https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

L'instruction print ne doit avoir qu'un jeu de parenthèses, et tous les éléments à afficher doivent être écrits entre les parenthèses.


0
mamiemando Messages postés 33088 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 30 avril 2024 7 751
Modifié le 20 oct. 2023 à 03:27

Juste pour préciser, une fois corrigé, si on s'en tient uniquement à la syntaxe, ton code devrait ressembler à cela :

x = int(input("tapez votre âge :"))
y = int(input("tapez un autre âge :"))
print("x :", x , "et", y, "ans")
print("division :", x / y)
d = x / y
print("d égal à :", d)
print("divise en chiffre entier :", int(d))

Si maintenant on tient compte de ce que ça semble être supposé faire, on écrirait probablement :

x = input("Tapez votre âge ?")
y = input("Tapez un autre âge ?")
print("x =", x, "ans y =", y, "ans")
print("Division réelle:", x / y)
print("Division entière:", x // y)

... ce qui s'écrit de manière équivalente avec des f-strings comme suit :

​x = input("Tapez votre âge ?")
y = input("Tapez un autre âge ?")
print(f"x = {x} ans y = {y} ans")
print(f"Division réelle: {x / y}")
print(f"Division entière: {x // y}")

Bonne chance

0
Whismeril Messages postés 19036 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 2 mai 2024 931 > mamiemando Messages postés 33088 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 30 avril 2024
17 oct. 2023 à 08:16

Bonjour Mamiemondo

effectivement, une fois le code simplement corrigé (ton premier code donc) semble ne pas donner le résultat attendu pour la dernière ligne. Ton second code peut-être une correction possible.

Mais les f-string, alors qu'un print basique et la division euclidienne ne sont pas encore acquis, là encore, il me semble c'est disproportionné.

0
mamiemando Messages postés 33088 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 30 avril 2024 7 751 > Whismeril Messages postés 19036 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 2 mai 2024
20 oct. 2023 à 03:26

Oui j'ai corrigé, merci.

0

Bonjour, un grand merci à tous pour votre aide. Bonne journée

0