équation de deuxième degré

cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007 - 30 avril 2005 à 00:52
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007 - 3 mai 2005 à 16:04
bonsoir!
je suis débutante dans la programmation avec vb et j'ai trouvé ce site très intéressant ...
je veux créer une application qui permet de résoudre une équation de deuxième degré et j'ai besoin d'aide pour ça !!!
un grande merci d'avance!

11 réponses

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
30 avril 2005 à 08:22
Soit une équation aX² + bX + c = 0



Tu demandes à l"utilisateur de rentrer les valeurs a,b et c (dans des InputBox par exemple).



Dim a As Double

Dim b As Double

Dim c As Double

Dim delta As Double

Dim premiereRacine As Double

Dim secondeRacine As Double



a = InputBox("Entrez une valeur pour a")

b = InputBox("Entrez une valeur pour b")

c = InputBox("Entrez une valeur pour c")

delta = b*b-4*a*c

premiereRacine = (-b-Sqr(delta))/(2*a)

secondeRacine = (-b+Sqr(delta))/(2*a)



MsgBox "Les racines sont " & premiereRacine & " et " & secondeRacine




Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
30 avril 2005 à 08:33
Bien sûr, il faut vérifier que delta est supérieur ou égal à 0 avant de cracher une racine carrée.

Il faut aussi vérifier que 'a' est différent de 0, sinon, on ne se trouve pas avec une équation du second degré.

Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
30 avril 2005 à 08:35
Dim a As Double

Dim b As Double

Dim c As Double

Dim delta As Double

Dim premiereRacine As Double

Dim secondeRacine As Double

a=0

While a=0
a = InputBox("Entrez une valeur pour a")

Wend

b = InputBox("Entrez une valeur pour b")

c = InputBox("Entrez une valeur pour c")

delta = b*b-4*a*c

If delta<0 Then

MsgBox "Pas de racine réelle."

Else

If delta=0 Then

MsgBox "Une racine double : " & (0-b)/(2*a)

Else
premiereRacine = (-b-Sqr(delta))/(2*a)
secondeRacine = (-b+Sqr(delta))/(2*a)

MsgBox "Les racines sont " & premiereRacine & " et " & secondeRacine

End if

End If






Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
30 avril 2005 à 16:00
ha si seulement les maths etaient aussi facile que cela pour l enseignement superieur je me serait fait un prog pour chacun d entre eux ...enfin de toute facon les controle de math sont sans calculatrice alors le jour ou on aura un pc pr resoudre des probleme n est pas encore arrivé (du moins au niveau etudiant)

au fait encgt ... tu dois avoir une calculatrice programmable non ? genre TI 83, casio ou qqch du genre ...ca ne te servirait pas plus un programme sur ce support plutot que sur pc ?

PS: grugeuse ;O)

Teclis
0

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

Posez votre question
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
30 avril 2005 à 22:33
merci bcp econs!
j'ai essayé le code que vs m'avez procuré , mais j'ai un msg qui s'affiche :erreur de compilation "incorrect à l'extérieur d'une procédure
en fait ! je ne sais pas où est le prblm ......car je trouve le code très logique et rationelle !mais la seule chose que je ne comprends pas c'est l'utilisation de la boucle while et sa signification peut être le prblm est à ce niveau!!!!!!
merci encore une fois pr ton aide et j'éspère ne pas avoir trop dérangé!
0
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
30 avril 2005 à 22:43
bonsoir teclis 01!
merci pour le conseil !
j'ai dèja une calculatrice programmable !
mais je fais ça pour le faire et pour apprendre davantage des trucs et astuces et ds vb et non pas pour en utiliser ds les calculs au lieu de la calculatrice!!!!
vs avez tt à fais raison c moins ergonomique de calculer ds un pc au lieu d'une calculatrice !!!!
0
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
1 mai 2005 à 17:54
bonjour!
maintenant ca marche bien !je te remercie encore une fois
et à la prochaine
0
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
1 mai 2005 à 18:59
c'est encore moi!
en fait le code marche très bien pour un formulaire, mais moi je veux créer une feuille dans laquelle tu peut saisir les valeur de a , b et c et d'un clic sur un bouton que j'ai nommé "calculer" tu peut avoir le résultat , j'ai essayé ce code mais ca n'a pas marché et je veux détecter où exactemement l'erreur!!!!!
merci d'avance

Private Sub Command2_Click()
Dim a As Double
Dim b As Double
Dim c As Double
Dim delta As Double
Dim premiereRacine As Double
Dim secondeRacine As Double
a = Text1.Text
b = Text2.Text
c = Text3.Text
a = 0
While a = 0
Wend
delta = b * b - 4 * a * c
If delta < 0 Then
Label5.Caption = "Pas de racine réelle."
Label5.Visible = True
Else
If delta = 0 Then
Label5.Caption = (0 - b) / (2 * a)
Label5.Visible = True
Else
premiereRacine = (-b - Sqr(delta)) / (2 * a)
secondeRacine = (-b + Sqr(delta)) / (2 * a)
Label5.Caption = "Les racines sont " & premiereRacine & " et " & secondeRacine
Label5.Visible = True
End If
End If
End Sub
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
2 mai 2005 à 08:41
Tu y étais presque. Dans ton cas, il faut virer la boucle While, sinon tu boucles à l'infini.

A l'origine, elle était là pour t'empêcher de rentrer "0" quand on te demande de saisir la valeur de 'a'.





Private Sub Command2_Click()
Dim a As Double
Dim b As Double
Dim c As Double
Dim delta As Double
Dim premiereRacine As Double
Dim secondeRacine As Double
a = Text1.Text
b = Text2.Text
c = Text3.Text
<strike>a = 0

While a = 0

Wend</strike>
delta = b * b - 4 * a * c
If delta < 0 Then
Label5.Caption = "Pas de racine réelle."
Label5.Visible = True
Else
If delta = 0 Then
Label5.Caption = (0 - b) / (2 * a)
Label5.Visible = True
Else
premiereRacine = (-b - Sqr(delta)) / (2 * a)
secondeRacine = (-b + Sqr(delta)) / (2 * a)

Label5.Caption = "Les racines sont " & premiereRacine & " et "
& secondeRacine
Label5.Visible = True
End If
End If
End Sub













Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
2 mai 2005 à 23:40
merci bcp!
0
cs_encgt Messages postés 26 Date d'inscription samedi 30 avril 2005 Statut Membre Dernière intervention 19 avril 2007
3 mai 2005 à 16:04
bonjour!
je veux faire deux choses ds la même feuille qui me permettera de visualiser résultat de mon équation mais je ne sais pas comment y procéder:
1-je veux que le bouton "calculer" ait le focus
2- et insérer des images et un arrière plan que j'ai ds un dossier à part dans ma feuille!
un grand merci d'avance!
0
Rejoignez-nous