Théorème de pythagore en python

Bonjour à tous, depuis quelque temps, je me suis mis à la programmation en python. Et j’aime beaucoup les maths, et je souhaites faire un programme qui permet d’utiliser le théorème de pythagore. Pour l’instant j’ai fait ça :
import math
a = float(input(« Le côté adjacent= »))
h = float(input(« L’hypothénuse= »))
o = float(input(« Le côté opposée= »))
if a == :
ra = h2 - o2
print(« Le côté adjacent= », math.sqrt(ra), « cm »)
elif h == :
rh = o2 + a2
print(« L’hypothénuse= », math.sqrt(rh), « cm »)
elif o == :
ro = h** - a**2
print(« Le côté opposée = », math.sqrt(ro), « cm »)

Je ne sais pas quoi faire pour que ça fonctionne. En fait j’aimerai faire en sorte que pour chaque cas on puisse ajouter les longueur car à la commande float(input()). Mais je ne sais pas comment faire pour faire comprendre à l’ordinateur que si j’écris x ou ? ou … . Si quelqu’un d’entre vous saurais ce serai super.
Merci d’avance
Cordialement

Bonjour,

Ton programme n’est pas mis en forme. Python requiert l’indentation sans l’affichage avec le respect des espaces devant chaque ligne, difficile de dépanner.
Quel est ton problème plus précisément ?

A+

Salut @leostryj

Si un triangle est rectangle, le carré de la longueur de l’hypoténuse (ou côté opposé à l’angle droit) est égal à la somme des carrés des longueurs des deux autres côtés.

Si le triangle ABC est rectangle en C et que AB est l’hypothénus,
Alors, en général, on connait la mesure AC et la mesure BC.
Cela permet de trouver la longueur AB avec AB² = AC² + BC²

Bref, on connait 2 info sur les 3.
Là, tu demandes 3 valeurs.

Maintenant,

Ce qui se conçoit bien s’énonce clairement, et les mots pour le dire arrivent aisément

Ce que tu veux, c’est pouvoir réponde « 2 » ; « 3 » ; « ? » et que l’ordi comprenne que « ? » signifie que c’est cette donnée qui n’existe pas et qu’il doit donc la trouver ?
Parce que, franchement, je n’ai pas bien compris ton message.

Donc explique plutôt, en Français ou en pseudo-code, ce que tu souhaites faire.

Bon, coup de génie de ma part ??? :sunglasses:
Je ne suis pas sûr, mais je pense que l’idée est dans cette voie.
L’idée ne serait pas plutôt de demander ce que tu sais ?

Question 1:
« Tu connais quoi ; A ? H ? O ? »
Réponse 1 :
A
Question 1 bis :
« Longueur de A ? »

Question 2:
« Tu connais quoi ; A ? H ? O ? »
Réponse 2 :
O
Question 2 bis :
« Longueur de O ? »

Du coup, on est dans Si je connais A et que je connait O, alors je cherche H

Je ne suis pas mathématicien, ni développeur, donc je te laisse chercher.

++

Bonjour,

En plus de l’approche de @Nabla, j’ai repris ton programme.

Tel qu’il est écrit, on remarque qu’il ne fonctionne pas mais que l’idée est bien là.
Je note 4 types d’erreurs:
1 - Il faut indenter correctement ton programme.
2 - float(input(« xxx ») transforme une chaine de caractère en nombre flottant. Une chaine vide ne peut être transformée. Tu est donc obligé de saisir une chaine de caractère contenant uniquement des chiffres (à virgule ou pas - sachant qu’en Python la virgule est un point).
La solution serait, dans ce cas, de saisir 0 pour la valeur que tu ne connais pas.
3 - if a == : n’est pas une syntaxe Python valide. Il faut comparer impérativement à une valeur. Dans ton cas, ce serait donc 0
4 - Tu utilise 3 formes différentes pour calculer le carré d’une valeur (ex: a2, a**, a**2), une seule est valide en Python. Transforme toutes tes formules avec la même forme d’écriture.

Une fois ces 4 type d’erreur corrigées, ton programme fonctionne parfaitement.

A+