C#: Kleinste Zahl eines Arrays ausgeben?

2 Antworten

Dein Wert "l" sollte nicht 1 sein. Sondern vor der Schleife den Wert von "meinArray[0]" haben. Die Schleife kannst du dann dementsprechend auch bei 1 (und nicht bei 0) loslaufen lassen.

Übrigens ist deine Variablenbenennung noch verbesserungswürdig. "l" ist zum einen schlecht, weil es recht nichtssagend ist und zum anderen, weil man das kleine "L" optisch leicht mit der Eins verwechseln kann. Ganz profimäßig wäre es, allen Variablen englische Namen zu geben, aber wenn "l" dann "kleinsterWert" heißt, dann wäre das auch schon ein Schritt nach vorne.

Ach ja, und kannst du deinen Algorithmus für die größte Zahl mal testen, wobei alle Zahlen, die du eingibst, negativ sind. Kriegst du dann auch noch das richtige Ergebnis? Falls nicht - für die Fehlerbehebung lies den ersten Absatz dieser Antwort nochmal. ;)

Also dein Algorithmus geht durch das Array und vergleich einen gespeicherten min-Wert und den aktuellen.

Richtiger Ansatz.

Aber.. ist die 0, mit der du die Variable initialisierst nicht immer kleiner? (Außer du hast nur negative zahlen im Array, dann ist das natürlich nicht so wichtig)


Freshanddopehh 
Beitragsersteller
 20.01.2020, 18:41

Und wie bekomme ich das richtig hin?

Habe echt kein Plan.

XGamer11208  20.01.2020, 18:42
@Freshanddopehh

Was genau verstehst du nicht?

Wenn ich ein Array habe mit [1,2,3,4], dann ist die kleinste Zahl die 1.
Wenn ich aber die minZahl starte mit 0, dann wird die 0 doch immer kleiner sein.

minZahl = 0
0 < 1
0 < 2
0 < 3
0 < 4
=> minZahl ist 0