Mit Hilfe von Schleife, die größte Zahl herausfinden!

123123123

Erfahrenes Mitglied
Huhu,

meine Frage ist, wie kann ich mit Hilfe von einer foreach-Schleife die größte zahl im einem Array herrausfinden! Ohne die Befehle max und min zu verwenden! Oder geht es mit einer anderer Schleife?

Also der Anfang ist so :

$zahlen = array (5,23,36,87,333);


Lg
 
Hi

du machst dir noch eine Variable x und setzt sie vor der Schleife auf 0.

In der Schleife prüfst du für jedes Arrayelement, ob es größer als x ist.
Wenn ja: Den Wert in x reinschreiben.

Am Schluss ist der größte Wert in x.

Gruß
 
Hallo 123123123,

So könnte man das machen:
PHP:
$zahlen = array (5,23,36,87,333);
$count = count( $zahlen );
$max = 0;
for ( $i = 0; $i < $count; $i++ ) {
    if ( $zahlen[$i] > $max ) {
        $max = $zahlen[$i];
    }
}

echo 'Hoechste Zahl im Array ist: '.$max;

Gruß
 
Oder geht es mit einer anderer Schleife?
Das geht mit allen Schleifentypen: for, foreach, while, do...while.
Es geht sogar mit dem nicht empfehlenswerten goto.

Du kannst auch [phpf]sort[/phpf] verwenden:
PHP:
<?php

$zahlen = array (5,23,36,87,333);
sort($zahlen);

echo $zahlen[ count($zahlen)-1 ];
/* oder */
echo array_pop($zahlen);

?>
 
OK danke für die tolle Hilfe! Aber wenn ich versuche die kleinste Zahl herauszufinden, geht es irgendwie nicht, also ich drehe einfach die Groß-und Kleinzeichen um, aber kriege 0 raus! Was mache ich falsch**** :)
 
Fang mit x statt bei 0 mit dem ersten Arrayelement an.
Hätte man beim Grö0ten auch gleich machen können.
 
Hallo 123123123,

um die kleinste Zahl im Array zu finden:
PHP:
$zahlen = array (5,23,36,87,333); 
$count = count( $zahlen ); 
$min = $zahlen[0]; // erste Zahl des Arrays als min setzen
for ( $i = 1; $i < $count; $i++ ) { 
    if ( $zahlen[$i] < $min ) { 
        $min = $zahlen[$i]; 
    } 
} 

echo 'Kleinste Zahl im Array ist: '.$min;
Du setzt als ersten Prüfwert den ersten Wert im Array, somit stellst Du sicher, dass Du auch wirklich die kleinste Zahl aus dem Array erhältst.

Würdest Du hier mit 0 anfangen, bekommst Du bei diesem Array immer 0 am Ende da keine Zahl kleiner ist. Es kann zwar vorkommen, dass kleinere Zahlen im Array sind, aber das weiß man vorher ja meistens nicht.

Deswegen einfach eine Zahl aus dem Array nutzen.

Gruß
 
Zurück