1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
| Option Explicit
Public nobj() As Long
Public xc() As Long
Public yc() As Long
Public s() As Long
Public d() As Long
Public xx() As Long
Public yy() As Long
Public angle() As Long
Public moyenne1 As Double
Public moyenne2 As Double
Public moyenne3 As Double
Public moyenne4 As Double
Public moyenne5 As Double
Public moyenne6 As Double
Public moyenne7 As Double
Public variance1 As Double
Public variance2 As Double
Public variance3 As Double
Public variance4 As Double
Public variance5 As Double
Public variance6 As Double
Public variance7 As Double
Public Ecart_type1 As Double
Public Ecart_type2 As Double
Public Ecart_type3 As Double
Public Ecart_type4 As Double
Public Ecart_type5 As Double
Public Ecart_type6 As Double
Public Ecart_type7 As Double
Private Sub CalculMoyenneEcartType(ByRef monTab() As Long, ByRef moy As Double, ByRef ectyp As Double)
Dim somme As Double
Dim i As Integer
somme = 0
For i = 0 To UBound(monTab)
somme = somme + monTab(i)
Next i
moy = somme / (UBound(monTab) + 1)
somme = 0
For i = 0 To UBound(monTab)
somme = somme + (monTab(i) - moy) ^ 2
Next i
ectyp = Sqr(somme / (UBound(monTab) + 1))
End Sub
Public Sub ActionBouton1()
'Ouverture du fichier et récupération des données
Dim NOM_FICHIER As String
Dim FICHIER As String
Dim TOTAL As Integer
Dim tmp As String
Dim n As Integer
'Mis en commentaire car je ne sais pas ce qu'est File1 et je n'utilise pas habituellement les $
' CHEMIN$ = File1.Path
' FICHIER$ = File1.Filename
' NOM_FICHIER = CHEMIN$ + "\" + FICHIER$
Open NOM_FICHIER For Input As #1
Input #1, tmp
TOTAL = CInt(tmp)
Line Input #1, tmp 'ligne suivante
ReDim n°obj(TOTAL - 1)
ReDim xc(TOTAL - 1)
ReDim yc(TOTAL - 1)
ReDim s(TOTAL - 1)
ReDim d(TOTAL - 1)
ReDim xx(TOTAL - 1)
ReDim yy(TOTAL - 1)
ReDim angle°(TOTAL - 1)
For n = 0 To TOTAL - 1
Input #1, nobj(n), xc(n), yc(n), s(n), d(n), xx(n), yy(n), angle(n)
Next n
Close #1
Debug.Print
'Calcul des Moyennes et des écart-types
CalculMoyenneEcartType angle, moyenne1, Ecart_type1
CalculMoyenneEcartType xc, moyenne2, Ecart_type2
CalculMoyenneEcartType yc, moyenne3, Ecart_type3
CalculMoyenneEcartType s, moyenne4, Ecart_type4
CalculMoyenneEcartType d, moyenne5, Ecart_type5
CalculMoyenneEcartType xx, moyenne6, Ecart_type6
CalculMoyenneEcartType yy, moyenne7, Ecart_type7
'Affichage
Debug.Print "la moyenne des angles est de " & moyenne1 & "degrés"
Debug.Print "la moyenne des xc est de " & moyenne2
Debug.Print "la moyenne des yc est de " & moyenne3
Debug.Print "la moyenne des s est de " & moyenne4
Debug.Print "la moyenne des d est de " & moyenne5
Debug.Print "la moyenne des xx est de " & moyenne6
Debug.Print "la moyenne des yy est de " & moyenne7
Debug.Print "L'écart-type des angles est de " & Ecart_type1
Debug.Print "L'écart-type des xc est de " & Ecart_type2
Debug.Print "L'écart-type des yc est de " & Ecart_type3
Debug.Print "L'écart-type des s est de " & Ecart_type4
Debug.Print "L'écart-type des d est de " & Ecart_type5
Debug.Print "L'écart-type des xx est de " & Ecart_type6
Debug.Print "L'écart-type des yy est de " & Ecart_type7
Debug.Print
'Calcul des variances
variance1 = Ecart_type1 ^ 2
variance2 = Ecart_type2 ^ 2
variance3 = Ecart_type3 ^ 2
variance4 = Ecart_type4 ^ 2
variance5 = Ecart_type5 ^ 2
variance6 = Ecart_type6 ^ 2
variance7 = Ecart_type7 ^ 2
'Affichage
Debug.Print "la Variance des angles est de " & variance1
Debug.Print "la Variance des xc est de " & variance2
Debug.Print "la Variance des yc est de " & variance3
Debug.Print "la Variance des s est de " & variance4
Debug.Print "la Variance des d est de " & variance5
Debug.Print "la Variance des xx est de " & variance6
Debug.Print "la Variance des yy est de " & variance7
End Sub
Public Sub ActionBouton2()
'Calcul de la covariance
Dim sigmaxy As Double
Dim i As Integer
sigmaxy = 0
For i = 0 To UBound(s)
sigmaxy = (sigmaxy + ((s(n) - moyenne4)) * ((d(n) - moyenne5)) / TOTAL)
Next i
Debug.Print sigmaxy
'Etc...
End Sub |
Partager