| Function, Feldvariable |
| |
| |
| Private WerteFeld() As Double | Feldvariable definieren. |
| |
| Private Sub cmdHinzufügen_Click() | |
| With txtZahl | |
| If IsNumeric(.Text) = True Then | Wenn der Inhalt der Eingabe-TextBox numerisch ist, |
| lstWerte.AddItem txtZahl.Text | wird der Eintrag in die ListBox (links unten) über- |
| .SelStart = 0 | nommen. |
| .SelLength = Len(.Text) | |
| End If | |
| .SetFocus | TextBox erhält Fokus zurück. |
| End With | |
| End Sub | |
| |
| Private Sub cmdStandardabweichung_Click() | |
| Dim n As Long | |
| If lstWerte.ListCount > 0 Then | Wenn die ListBox Einträge enthält, dann werden alle |
| ReDim WerteFeld(0 To lstWerte.ListCount - 1) | Elemente der ListBox in die Feldvariable übertragen. |
| For n = 0 To lstWerte.ListCount - 1 | Eine Schleife durchläuft die ListBox, und... |
| WerteFeld(n) = lstWerte.List(n) | ...übergibt die Werte an die Funktion. |
| Next n | |
| lblStandardabweichung.Caption = _ | Das Label erhält den Endwert aus der Funktion. |
| Format(Standardabweichung(WerteFeld), "0.00") | |
| End If | |
| End Sub | |
| |
| Function Standardabweichung(tmpFeld As Variant) _ | Funktion zur Berechnung der Standardabweichung |
| As Double | definieren. |
| Dim n As Long, Summe As Double, Durchschnitt As Double | |
| For n = LBound(tmpFeld) To UBound(tmpFeld) | Als erstes den Mittelwert bilden. |
| Summe = Summe + tmpFeld(n) | |
| Next | |
| Durchschnitt = Summe / n | |
| Summe = 0 | |
| For n = LBound(tmpFeld) To UBound(tmpFeld) | |
| Summe = Summe + (tmpFeld(n) - Durchschnitt) ^ 2 | In der Beschreibung wurde die Formel der Standard- |
| Next | abweichung falsch angegeben - sie lautet richtig: |
| s = sqr(Summe(x-u)^2 / (n-1)). |
| Standardabweichung = Sqr(Summe / (n - 1)) | Schleifenzähler n ist am Ende zwar um eins zu groß, |
| End Function | doch da der Index bei 0 anfängt, passt es. |
| |
| Private Sub cmdLöschen_Click() | |
| lstWerte.Clear | Diese Ereignisprozedur löscht den Inhalt der ListBox. |
| End Sub | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| . |
| |