Structures de contrôles conditionnelles et répétitives

Signaler
Messages postés
3
Date d'inscription
samedi 30 janvier 2021
Statut
Membre
Dernière intervention
31 janvier 2021
-
Messages postés
15651
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mars 2021
-
Bonsoir,

Je débute dans la programmation en python et j'aurais besoin d'aide pour un exercice sur lequel je ne parviens qu'à obtenir des messages d'erreur.
Soit l'équation du second degré : ax²+bx+c
Il me faut utiliser la fonction if/else dansl e programme afin qu’il affiche les messages suivants selon le cas : aucune racine réelle, une racine réelle double et sa valeur, ou bien deux racines réelles distinctes et leurs valeurs.

Voici ce que j'ai essayé de faire :

a = float(input("a = "))
b = float(input("b = "))
c = float(input("c = "))

delta = b**2-4*a*c

if <delta >= 0> :
  <x1 = ((-b)-sqrt(delta)) / (2*a)
  x2 = ((-b)+sqrt(delta)) / (2*a)
  print("x1 = :", x1,"x2 =", x2)>
elif <delta == 0> :
  <x = (-b) / (2*a)
  print("x =", x)>
  else:
    <print("L'équation ne possède pas de racine réelle")>

Malheureusement tout ce que j'ai pu obtenir jusqu'à présent, ce sont des messages d'erreurs...

Pouvez-vous m'aider s'il vous plaît ?

2 réponses

Messages postés
3
Date d'inscription
samedi 30 janvier 2021
Statut
Membre
Dernière intervention
31 janvier 2021

Je crois avoir trouvé :
delta = b**2-4*a*c

y1 = (-b) / (a*2)
x1 = ((-b)-sqrt(delta))/(2*a)
x2 = ((-b)+sqrt(delta))/(2*a)

if delta >0 : print("x1 =", x1,"x2 =", x2) 
elif delta == 0 : print("y1 =", y1)
else:print("L'équation ne possède pas de racine réelle")


Malheureusement la console ne reconnait pas les résultats négatifs, chaque fois que je cherche d'afficher le résultat "pas de racine réelle" avec un delta négatif je reçois un message d'erreur. J'ai néanmoins pu trouver les deux autres résultats pour delta supérieur ou égal à 0. Dites-moi s'il est possible de permettre à la console de calculer les résultats négatifs s'il vous plait.

Par ailleurs je n'arrive pas à la faire fonctionner ailleurs que sur l'onglet "main" : dès que j'efface le contenu sur cet onglet pour le mettre sur d'autres (par exemple "exercice 10") plus rien ne se passe sur la console et je dois le réécrire sur "main" pour pouvoir faire fonctionner la console. Pouvez-vous me dire comment régler ce problème s'il vous plait ?
Messages postés
15651
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mars 2021
516
Bonjour

En python, l’indentation est primordiale, mais le site ne la conserve que si tu utilises les balises de code, voir https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

On ne pourra commencer à t’aider qu’une fois le code correctement présenté