2016-03-22 5 views
-1

Ich habe einige Probleme beim Versuch, Ganzzahlen in ein Array mit Visual Basic eingeben. Ich bin sehr neu, um Visual Basic (und Programmierung im Allgemeinen) zu verwenden, und ich habe mich sowohl in Google als auch auf dieser Website umgesehen, um eine Antwort zu finden, aber ich finde kein Glück und wollte sehen, ob irgendjemand könnte mir helfen.Visual Basic-Eingabe in ein Array

Im Grunde, was ich bisher

Function inputArray() 
    Dim array() As Integer 
    Console.WriteLine("Please input how many integers you would like to add") 
    For i = 0 To array.Length - 1 
     Console.WriteLine("Please enter an integer") 
     Console.ReadLine() 
    Next 
    Console.WriteLine(array) 
    Return array 
End Function 

Was ich versuche zu erreichen, um die Benutzer zu fragen, wie viele Zahlen sie zur Eingabe in das Array möchten und erlauben dann der Benutzer eine Eingabe zu machen für die Anzahl der von ihnen ausgewählten Ganzzahlen und diese Ganzzahlen im Array zu speichern.

Wenn mir jemand ein Beispielcode geben könnte, wie ich das machen würde, würde ich es sehr schätzen.

+0

In der Schleife Sie nichts Array Einfügen(). Gehst du hier ein Windows-Formular? – Chuck

+0

Sie müssen die Zahl für die Anzahl der Ganzzahlen lesen, die sie hinzufügen möchten. – jagler

+0

Ich verwende keine Formulare oder so etwas nur "Black Box" ich denke, der Begriff ist. Das Problem, das ich habe, ist, dass ich nicht weiß, wie man die Eingabe in das Array einfügt, und ich experimentiere seit einer Weile, um es herauszufinden. Was meinst du mit "lese die Zahl für wie viele ganze Zahlen sie hinzufügen möchten"? –

Antwort

4

Sie könnten eine List anstelle einer Array verwenden.

Dies ist ein kurzes Beispiel (ohne Fehler-Handlings)

Imports system.Threading 

Module Module1 

    Sub Main() 
     Module1.BuildIntegerList() 

     Console.ReadKey() 
     Environment.Exit(exitCode:=0) 
    End Sub 

    Private Sub BuildIntegerList() 

     Dim values As New List(Of Integer) 
     Dim amount As Integer 
     Dim nextValue As Integer 

     Console.WriteLine("Please input how many integers you would like to add") 
     amount = CInt(Console.ReadKey().KeyChar.ToString()) 

     Do Until values.Count = amount 
      Console.Clear() 
      Console.WriteLine("Please enter an integer") 
      nextValue = CInt(Console.ReadKey().KeyChar.ToString()) 
      values.Add(nextValue) 
      Thread.Sleep(250) 
     Loop 

     Console.Clear() 
     Console.WriteLine(String.Format("Values: {0}", String.Join(", ", values))) 

    End Sub 

End Module 
+0

Ich möchte nicht, dass Sie immer Eingabeformular Benutzer überprüfen sollten. – jagler

1

ich auch Liste verwenden würde, wie durch ElektroStudios erwähnt. Da Sie jedoch Arrays verwendet haben, würde ich es so schreiben.

Function inputArray() 
    Console.WriteLine("Please input how many integers you would like to add") 
    Dim count = CInt(console.ReadLine()) 
    Dim array(count-1) As Integer 

    For i = 0 To count - 1 
      Console.WriteLine("Please enter an integer") 
      array(i) = CInt(Console.readline()) 
    Next 

     For i = 0 To array.Length-1 
     Console.Write(array(i)) 
     Next 

    return array 
End Function 

Hier ist ein funktionierendes Beispiel: dotnetfiddle

+0

Danke für die Antworten Jungs, du warst sehr hilfreich! Ich versuche nur, mir selbst das Programmieren beizubringen, manchmal brauche ich ein wenig Hilfe bei der logischen Strukturierung. –

+0

Gut .. gutluck! Versuchen Sie, das Problem zu lösen und gehen Sie eins nach dem anderen damit um und Sie werden es erreichen. Und yeah Vergessen Sie nicht, eine Antwort zu verbessern, die Ihnen geholfen hat – TheUknown

Verwandte Themen