Bonjour,
Voici l'énoncé de mon exercice :
Écrire en Python un programme qui, à partir (entrées) des valeurs des 2 côtés a=BC et b=AC=AB d'un triangle ABC isocèle de sommet A, calculé une valeur approchée de l'aire du triangle.
Vous testerez votre programme, au moins, pour les deux cas suivants:
a=1 et b=1
a=racine carrée de 3 et b=1
J'ai réussi à faire un programme qui fonctionne mais j'ai un problème avec la racine carrée, Python bloque...
Merci de votre aide.
Bonjour,
"J'ai réussi à faire un programme qui fonctionne
mais" donc qui ne fonctionne pas
mais si tu veux qu'on te dise ce qui ne fonctionne pas, peut être que donner ton programme ici serait un peu nécessaire, tu ne penses pas ?
Pardon...
Voici mon programme :
from math import*
print ("Entrez les côtés de votre triangle")
a=float(input("Donner la valeur de a:"))
b=float(input("Donner la valeur de b:"))
aire = b/2 * sqrt(a**2 - b**2 / 4)
print("L'aire du triangle est environ:")
print(round(aire,2))
il est très bien ce programme
que lui reproches tu ?
que répondre en entrée le texte "sqrt(3)" ne marche pas ?
c'est normal, un texte n'est pas un nombre !
pour traduire des textes en exécution des calculs contenus dans ce texte il faut bien plus que float(...) !!
et je ne pense pas que ce soit du niveau ni que ce soit demandé !!
en tout cas je ne sais pas faire ça en Python
tu prends ta calculette et tu tapes racine de 3 dessus et tu copies colle la valeur de la calculette vers la zone de saisie de Python.
autre méthode : une fonction et pas un programme !
def aire(a,b) :
aire = b/2 * sqrt(a**2 - b**2 / 4)
print("L'aire du triangle est environ:")
return (round(aire,2))
et dans la console Python on tapera
aire(1,1)
et il répondra ce qu'on attend car il affiche la valeur de retour de la fonction
ou bien
aire(sqrt(3),1) et ça marchera !
car il évalue sqrt(3) avant de le transmettre comme valeur d'argument à la fonction.
matheuxmatou oui, (j'ai mal relu la formule tapée par rapport à mon brouillon ! raa)
le calcul est faux mais à part ça le principe est bon et le problème de Elvis2018 est très certainement ce que j'ai dit : on ne peut pas entrer "sqrt(3)" dans la zone de saisie d'un"input" et espérer qu'il va prendre la valeur de sqrt(3) comme nombre saisi !
salut,
programmer en python dans Xcas permet de beneficier du calcul formel
il faut eviter de donner le meme nom à la fonction et à la variable locale
il faut eviter de donner le meme nom à la fonction et à la variable locale
c'est bien d'accord, ce fut une erreur.
surtout que la variable locale ne sert pas à grand chose en fait :
def aire(a,b) :
print("L'aire du triangle est environ :")
return (round(a/2 * sqrt(b**2 - a**2 / 4) ,2))
parce que si on veut détailler les calculs dans le programme par des variables intermédiaires, tant qu'à faire :
h=sqrt(b**2 - a**2 / 4)
S = a*h/2
etc
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :