Schlechtestes Ergebnis ausgeben

ahykes

Erfahrenes Mitglied
Hallo Jungs,

ich habe eine Schleife die mir verschiedene Werte ausgibt. Zum Beispiel so:

PHP:
while(ora_fetch_into($curs, $set))
{
   echo $set[0];
   echo $set[1];
}

Gehen wir nun davon aus, dass in $set[1] eine Zahl steht. Die Schleife kann bis zu 300 Mal durchlaufen. Am Ende der Schleife möchte ich nun wissen, bei welchen 5Durchgängen $set[1] am größten war. Also QUASI TOP 5. Habt Ihr eine Idee? Vielleicht in ein Array schreiben und dann sortieren?:rolleyes:
 
Hi,

ich würde das folgendermaßen lösen:
PHP:
$i = 1;
while($i <= 300) 
{ 
	$num = rand(0, 999999);
	printf("%06d", $num);
	
	if(($i % 10) == 0)
		echo "<br />";
	else
		echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";

    if($i > 5)
    {
        if($num > $bo5_arr[4])
        {
            $bo5_arr[4] = $num;
            sort($bo5_arr);
        }
    }    
    else
    {
        $bo5_arr[] = $num;
        if($i == 5)  sort($bo5_arr);
    }

    $i++;
} 

for($i = 4; $i >= 0; $i--)
{
    echo "<br />" . strval($bo5_arr[$i]);
}

Dabei werden erst alle Zufallszahlen ausgegeben(jeweils 10 in eine Zeile) und dann die ersten 5 der Reihe nach.

MfG
 
erik s. hat gesagt.:
Hi,

ich würde das folgendermaßen lösen:
[…]

Dabei werden erst alle Zufallszahlen ausgegeben(jeweils 10 in eine Zeile) und dann die ersten 5 der Reihe nach.
Und wenn man [phpf]rsort[/phpf] anstatt [phpf]sort[/phpf] verwendet, dann klappt es sogar ;) Alternativ könnte man auch $bo5_arr[4] jeweils durch $bo5_arr[0] ersetzen.
 
Zurück