Ich habe Schwierigkeiten mit einem Problem für meine Visual Basic 2012-Klasse. Die Anweisungen sind unter:Parallele Arrays mit String und Ganzzahl
Monat \ Tage Programm: Die Anwendung zwei parallele Arrays verwenden: ein String-Array, das mit dem Namen der Monate und ein Integer-Array initialisiert wird, die mit der Anzahl der Tage initialisiert in jedem Monat. Wenn auf eine Schaltfläche geklickt wird, zeigt die Anwendung ihre Ausgabe in einem Listenfeld an.
Hier ist mein Code so weit. Wie programmiere ich es so, dass der Monat der richtigen Anzahl von Tagen zugewiesen wird? Danke für jede Hilfe!
Private Sub btnclick_Click(sender As Object, e As EventArgs) Handles btnclick.Click
'displays the month associated with the number of days entered by the user
Dim months() As String = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}
Dim days() As Integer = {31, 28, 30}
Dim searchfor As String
Dim subscript As Integer
'assign the month to a variable
searchfor = txtbox.Text
'search the month array for the number of days
'continue searching until there are no more array
'elements to search for or until the months are found
Do Until subscript = months.length _
OrElse searchfor = months(subscript)
subscript = subscript + 1
Loop
'determine whether the days were found in the months array
If subscript < months.length Then
dayslabel.Text = days(subscript).ToString
Else
End If
txtbox.Focus()
End Sub
Private Sub txtbox_TextChanged(sender As Object, e As EventArgs) Handles txtbox.TextChanged
txtbox.SelectAll()
dayslabel.Text = String.Empty
End Sub
End Class
Warum 12 hast du 'Tage()' drei Elemente lang machen und nicht? – GSerg
Ich glaube, dass sie es interpretiert, um die Möglichkeiten '{31, 28, 30}' zu speichern, und nicht die vollständigen Details der parallelen Arrays kennen –
Die sind wirklich nicht parallel, wenn sie unterschiedliche Größen sind. Eine kleine Klasse, um den Namen und "Größe" zu halten wäre besser, oder vielleicht ein Tupple. – Plutonix