[déplacé ASP3 -> VBA] Calcul des racines d'un polynome

loli0912 Messages postés 1 Date d'inscription samedi 4 décembre 2010 Statut Membre Dernière intervention 4 décembre 2010 - 4 déc. 2010 à 11:54
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 - 3 janv. 2011 à 18:58
Bonjour je suis une débutante sur VBA et je dois trouver les racines d'un polynomes de degrès 2 mais je n'arrive pas a finir ma programmation quelqu'un pourrait il m'aider!
Merci
'Signature de la procédure

'IN:coefficient de a , coefficient de b, coefficient de c
'OUT:racine 1, racine 2
'TYPE: SOUS PROGRAMME

Sub calculracine(ByVal coeff_a As Double, ByVal coeff_b As Double, ByVal coeff_c As Double, ByRef racine_1 As Double, ByRef racine_2 As Double)

Call Lire_Cellules(coeff_a, a7Double, "Selectionner a")
Call Lire_Cellules(coeff_b, a7Double, "Sélectionner b")
Call Lire_Cellules(coeff_c, a7Double, "Selectionner c")

'Calcul discriminant

Dim delta As Double
Dim coeff_a As Double
Dim coeff_b As Double
Dim coeff_c As Double

delta = (coeff_b) ^ 2 - (4 * coeff_a * coeff_b)

If delta > 0 Then
If coeff_b > 0 Then racine_1 = (-coeff_b - Sqr(delta)) / 2 * coeff_a
ElseIf b < 0 Then racine_1 = (-coeff_b + Sqr(delta)) / 2 * coeff_a
End If
Call Ecrire_Feuille_Active(racine_1, 7, 2)
Else: Call Afficher("Le polynôme n'a pas de solutions dans R")





End Sub
A voir également:

1 réponse

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
3 janv. 2011 à 18:58
'FONCTION calculeRacines
'IN:   coefficient de a, coefficient de b, coefficient de c
'OUT:  racine 1, racine 2, nombre de racines distinctes en retour de fonction

Function calculeRacines(ByVal coeff_a As Double, ByVal coeff_b As Double, ByVal coeff_c As Double, ByRef racine_1 As Double, ByRef racine_2 As Double)
Dim delta As Double

'On calcule le discriminant
delta = (coeff_b) ^ 2 - (4 * coeff_a * coeff_b)

If delta >= 0 Then
'Si positif, deux solutions (identiques si delta=0)
racine_1 = (-coeff_b - Sqr(delta)) / 2 * coeff_a
racine_2 = (-coeff_b + Sqr(delta)) / 2 * coeff_a
calculeRacines IIf(delta 0, 1, 2)
Else
'Si strictement négatif, aucune solution dans R
calculeRacines = 0
End If
End Sub

Tu n'as plus qu'à créer une sub avec l'appel de calculeRacines, qui affectera le contenu des cellules Excel.

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
0
Rejoignez-nous