C# Eindimensionale Datenfelder. Kann mir das jemand erklären?

4 Antworten

Length ist die Anzahl der Elemente im Array.

new int[10]: Array aus Ganzzahlen mit der Länge 10 (10 Elemente)

Die kleinste Zahl wird so ermittelt, dass eine Variable MinWert erzeugt wird und zunächst auf den Wert des ersten Elements gesetzt wird. Dann wird das Array der Zufallszahlen in einer Schleife durchlaufen. Der Index des akuellen Schleifendurchlaufs ist in der Variable i gespeichert. Diese Variable wird also von 0 hochgezählt bist zum Index des letzten Elements. Wenn das aktuelle Element a[i] einen kleineren Wert hat als die Variable MinWert, wird die Variable mit dem Wert des aktuellen Elements überschrieben. Nachdem alle Element durchlaufen wurden enthält die Variable MinWert also den kleinsten aller Werte des Arrays.

Wie man in diesem Code den MinWert ermittelt, was Length bedeutet und weshalb genau z.b. a[i] steht, also welche Bedeutung dies hat.
(Mir ist klar, dass a und i einfach Variablen mit Zahlen sind, darum frage ich mal so: "Was bedeuten diese Zahlen in diesem Code, bzw. was bewirken diese?").

Length:

Gibt die Länge eines Arrays an. Ein Array ist eine simple Variable mit mehreren Datenfeldern, heißt statt einem Wert kann man mehrere Werte hinzufügen. Bei [10] wird [0-9] erstellt, heißt diese Bereiche können dann mit ArrayName[x] während x eine Zahl von 0-9 ist aufgerufen.

MinWert:

Das Programm fängt an den ersten Wert im Array als "MinWert" zu setzen, z.B. eine 20. Dann durchläuft er eine Schleife, die genauso lange ist wie der Array. Bei jedem Array-Eintrag überprüft er, ob dieser kleiner ist. Falls ja, dann soll der neue Wert gespeichert werden.

Der 2. Teil ist für mich Käse, man durchläuft den Array ein 2. Mal, prüft, ob die Position den gefundenen niedrigsten Wert hat und gibt dann die Position aus.

Man kann die Position aber bereits beim ersten Durchlauf abspeichern, anstatt ein 2. Mal durch zu laufen.

a[i]:

i ist dein Zähler, der von 0 bis 9 geht (da er läuft, solange er kleiner 10 ist). a ist dein Array. Er geht also von 0 bis 9 durch den kompletten Array durch.

Length: Länge eines Strings oder Anzahl Elemente in einem Array.

MinWert wird auf das erste Element im Array gesetzt (vermutlich die kleinste Zahl).

i ist eine Zahl, also wird das i - 1 Element dem MinWert zugewiesen.


Dudenox2  10.12.2019, 16:52

MinWert wird auch geupdatet per Schleife

1

Die kleinste Zahl in einer Liste ermittelt man immer so:

Du merkst dir die 1. Zahl der Liste in der Variable MinWert: MinWert = a[0]

Dann liest du die Liste durch: for...

Immer wenn du auf eine Zahl stößt, die kleiner als der MinWert ist: if a[i] < MinWert), ersetzt du MinWert durch diese Zahl: MinWert = a[i]

Wenn du am Ende der Liste bist, ist MinWert die kleinste Zahl in der Liste.

Genau das tun die 4 Zeilen nach der Leerzeile.