Hallo, ich brauche dringend eure hilfe!
Es soll ein VB – Programm erstellt werden, mit dem Messwerte erfasst und ausgewertet werden können. Zunächst wird die Anzahl der Messwerte über eine Inputbox eingegeben, anschließend sollen die einzelnen Messwerte über eine Inputbox eingegeben, in einer Reihung abgespeichert und in einer Listbox ausgegeben werden.
Es sollen der kleinste und größte Messwert ermittelt werden und damit auch der Bereich, in dem sich die Messwerte befinden (zwischen kleinstem und größtem Messwert). Anschließend soll neben der Gesamtanzahl der Messwerte die Anzahlen der Messwerte im ersten, zweiten und dritten Drittel des Bereiches ausgegeben werden
Außer der „Val“ –Funktion dürfen keine VB – Standardfunktionen verwendet werden!
Im Beispiel wurden 10 Messwerte eingegeben. Der kleinste Messwert ist 1, der größte 100. Der Bereich, in dem sich die Messwerte bewegen, geht also von 1 bis 100. Im 1. Drittel des Bereichs
(1 – 34) liegen 4 Messwerte (1, 10, 20, 30), im 2. Drittel des Bereichs (34 – 67) liegen 3 Messwerte (40, 55, 65) und im 3. Drittel des Bereichs (67 - 100) liegen auch 3 Messwerte (80, 90, 100).
Die Messwerte werden in der Listbox List1 ausgegeben. Die Ausgabe der Anzahl der Messwerte erfolgt im Textfeld Text1, der kleinste Messwert im Textfeld Text2, der größte Messwert im Textfeld Text3, die Anzahl der Messwerte im 1. Drittel im Textfeld Text4, die Anzahl im 2. Drittel im Textfeld Text5 und die Anzahl im 3. Drittel im Textfeld Text6.
Ich habe schon versucht das Programm zu schreiben aber kam nicht weiter.
Option Explicit
Option Base 1
Dim i As Integer, a() As Integer, Eingabe As String, Anzahl As Integer, y As Integer
Dim j As Integer, h As Integer, x As Integer
Private Sub Command1_Click()
Do
Eingabe = InputBox(„Bitte Messwert eingeben!“)
If Eingabe „“ Then
i = i + 1
ReDim a(i)
a(i) = Val(Eingabe) 'Festlegen der Anzahl
Anzahl = i
List1.AddItem (a(i))
End If
Loop Until Eingabe = „“
Call bubble(a(), Anzahl) ’ Tauschen
Text2.Text = a(i) 'Ausgabe der größeren Zahl
Text3.Text = a(1) 'Ausgabe der kleinste Zahl funktioniert aber nicht
Text1.Text = Anzahl 'Ausgabe Anzahl
'Berechnung der Drittel
x = a(i) - a(1) 'Bereich
x = x / 3
???
End Sub
Sub bubble(ByRef a() As Integer, ByVal m As Integer)
Dim i As Integer, j As Integer ', h As Integer
For j = m - 1 To 1 Step -1
For i = 1 To j
If a(i) > a(i + 1) Then
Call tausche(a(i), a(i + 1))
End If
Next i
Next j
End Sub
Sub tausche(ByRef x As Integer, ByRef y As Integer)
Dim h As Integer
h = x 'h: Hilfsvariable, damit der Wert von x nicht verloren geht
x = y
y = h
Vielen Dank schon mal im Voraus für eure Hilfe.