boujman
Messages postés1Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention27 octobre 2005 27 oct. 2005 à 18:39
Merci codea, étant un novice je vais l'étudier pour la comprendre et l'appliquer ensuite
codea
Messages postés94Date d'inscriptiondimanche 9 mai 2004StatutMembreDernière intervention 6 août 2006 27 oct. 2005 à 17:22
oubli :
et pour finalement calculer ta moyenne, ton max et ton min :
Moyenne=CalculerMoyenne(TaTable)
Max=MiniMax(e_Max,Tatable)
Min=Min=MiniMax(e_Max,Tatable)
codea
Messages postés94Date d'inscriptiondimanche 9 mai 2004StatutMembreDernière intervention 6 août 2006 27 oct. 2005 à 17:17
tu devrais calculer l,écart type aussi ... c toujours pratique ;o) ...
ton code est très long... imagine que tu entre tes notes dans un tableau. Ce serait plus simple qu'avec un input box et la tu peux te faire une fonction CalculMoyenne.... elle te retourne la moyenne ...
ca te ferais un code comme ca :
function CalculMoyenne(Tableau() as single)
for i=0 to ubound(Tableau)'on parcours tout le tableau
CalculMoyenne=CalculMoyenne+Tableau(i)
Next i
'On fais +1 si tu utilise l'index 0 du tableau, moi je l'utilise
CalculMoyenne=CalculMoyenne/(Ubound(tableau)+1)
end function
Fonction MiniMax: A mettre dans un module ... le code je l'ai pris sur codes source une fois il est pas de moi et il fonctionne bien:
Public Enum eMaxMin
e_Max = 0
e_Min = 1
End Enum
Public Function MiniMax(Choix As eMaxMin, tdd() As Variant, Optional debut As Integer, Optional fin As Integer)
'Cette fonction retourne le minimum ou le Maximum d'une liste d'éléments
'select case
Dim boucle As Long, VarTmp As Variant, ODC As Integer
'INITIALISE LES PARAMETRES OPTIONELS
If fin <0 Then fin UBound(tdd)
If debut < 0 Then debut = 0
Select Case Choix
Case e_Max
ODC = 1
Case Else
ODC = -1
End Select
VarTmp = tdd(debut) ' Initialisation de la valeur max
' Parcours de l'ensemble des arguments
For boucle = debut To fin
' Comparaison de l'élément courant avec le MiniMax
If ((VarTmp * ODC) < (tdd(boucle) * ODC)) Then VarTmp = tdd(boucle)
Next boucle
' Retourne l'élément le plus grand ou le plus petit
MiniMax = VarTmp
End Function
Ensuite tu pourrais aller chercher les données comme ca, je donne l'exemple sans validation:
dim TaTable() as single
Redim TaTable(0) 'Initialisation
Do While varSaisie <> ""
Redim TaTable(Ubound(TaTable)+1)
Tatable(Ubound(TaTable)) = InputBox("Entrer une note (laisser vide pour arrêter le comptage) :", "Note
Loop
Espérant que ca puisse t'aider a t'améliorer ...
@++
27 oct. 2005 à 18:39
27 oct. 2005 à 17:22
et pour finalement calculer ta moyenne, ton max et ton min :
Moyenne=CalculerMoyenne(TaTable)
Max=MiniMax(e_Max,Tatable)
Min=Min=MiniMax(e_Max,Tatable)
27 oct. 2005 à 17:17
ton code est très long... imagine que tu entre tes notes dans un tableau. Ce serait plus simple qu'avec un input box et la tu peux te faire une fonction CalculMoyenne.... elle te retourne la moyenne ...
ca te ferais un code comme ca :
function CalculMoyenne(Tableau() as single)
for i=0 to ubound(Tableau)'on parcours tout le tableau
CalculMoyenne=CalculMoyenne+Tableau(i)
Next i
'On fais +1 si tu utilise l'index 0 du tableau, moi je l'utilise
CalculMoyenne=CalculMoyenne/(Ubound(tableau)+1)
end function
Fonction MiniMax: A mettre dans un module ... le code je l'ai pris sur codes source une fois il est pas de moi et il fonctionne bien:
Public Enum eMaxMin
e_Max = 0
e_Min = 1
End Enum
Public Function MiniMax(Choix As eMaxMin, tdd() As Variant, Optional debut As Integer, Optional fin As Integer)
'Cette fonction retourne le minimum ou le Maximum d'une liste d'éléments
'select case
Dim boucle As Long, VarTmp As Variant, ODC As Integer
'INITIALISE LES PARAMETRES OPTIONELS
If fin <0 Then fin UBound(tdd)
If debut < 0 Then debut = 0
Select Case Choix
Case e_Max
ODC = 1
Case Else
ODC = -1
End Select
VarTmp = tdd(debut) ' Initialisation de la valeur max
' Parcours de l'ensemble des arguments
For boucle = debut To fin
' Comparaison de l'élément courant avec le MiniMax
If ((VarTmp * ODC) < (tdd(boucle) * ODC)) Then VarTmp = tdd(boucle)
Next boucle
' Retourne l'élément le plus grand ou le plus petit
MiniMax = VarTmp
End Function
Ensuite tu pourrais aller chercher les données comme ca, je donne l'exemple sans validation:
dim TaTable() as single
Redim TaTable(0) 'Initialisation
Do While varSaisie <> ""
Redim TaTable(Ubound(TaTable)+1)
Tatable(Ubound(TaTable)) = InputBox("Entrer une note (laisser vide pour arrêter le comptage) :", "Note
Loop
Espérant que ca puisse t'aider a t'améliorer ...
@++