Csharp Eingabe von mehreren Zahlen in Array speichern?

2 Antworten

Wenn es Console.WriteLine gibt, gibt es doch bestimmt auch Console.ReadLine.

Das Array zu übergeben, ergibt dann wenig Sinn. Du solltest es in Main deklarieren und über die Eingabe eine Schleife legen.

Woher ich das weiß:Berufserfahrung – Programmierer

poposalat 
Beitragsersteller
 18.03.2020, 11:14

genau jedoch gibt er mir ne fehlermeldung das string nicht in int[] konvertiert werden kann

Suboptimierer  18.03.2020, 11:17
@poposalat

Du liest auch nicht das Array ein, sondern jede Zahl einzeln. Du brauchst zudem anscheinend eine Konvertierungsfunktion von string nach int.

Console.WriteLine("Geben Sie 10 Zahlen ein.");
for(i=0;i<10;i++)
  a[i] = StrToInt(Console.ReadLine(...)); 

Das mal als ausbaufähiger Ansatz.

1. Bitte Variablennamen so benennen das man weiss wofür die variable steht. Am beste gleich am Anfang angewöhnen. Ausnahme sind die variablen in for schleifen. Da ist i j k l usw. (In der Reihenfolge) üblich.

1. Dein Array a ist das aus der Main Methode. Also die zahlen die beim Start der Anwendung mit übergeben werden.

Nutze console readln.

Der dürfte dir n String zurück geben.

Ggf. Kannste auch die Scanner Klasse nutzen die dir ints rausgeben kann. (Im Netz nach googlen und lesen wie man die benutzt)

Den String vom readln kannste mit split(" ")

In ein Array umwandeln. Dann haste die zahlen schonmal als string array

Dann durchläufste das String Array und parat mit Int32.parse oder Convert.toInt32 deine Strings auf Ints.

Und die schreibste dann in ein int Array welches du dann als Quelle für deinen bubblesort benutzt.

Fertig.

Oder suboptimierers Ansatz. Ist beides möglich. Ich bin jetzt davon ausgegangen daß man die Zahlen in Form einer Zeile eingibt. Also 1 2 3 usw.