Min, zweitkleinstes Min, Max und zweitgrösstes Max ausgeben

  • hallo

    folgendes problem ... ich soll beliebig viele daten von der tastatur einlesen zb 6 oder 20 oder keine ahnung der user legt das zuvor durch eine eingabe fest. diese werte werden in ein array gelesen, von diesen werten soll ich das minimum, den zweitkleinsten wert, den grössten und den zweitgrössten wert ermitteln. den grössten wert und den kleinsten wert habe ich ermittelt mit einer while schleife

    //minimaler und maximaler Wert
    $max=$feld[0];
    $min=$feld[0];
    $x=0;

    while ($x < $a) {

    if ($feld[$x] > $max) {
    $max=$feld[$x];
    }

    if ($feld[$x] < $min) {
    $min=$feld[$x];
    } }

    $x++;
    }

    jetzt ist meine frage wie kann ich den zweitkleinsten und den zweitgrössten wert ermitteln ???????
    eine zweite variante die ich versucht habe ist das array zu sortiren womit ich dann sagen kann das mein feld[0] das kleinste ist und mein feld[1] das zweitkleinste aber dann fehlt mir halt noch der zweitgrösste bei dieser
    variante bzw der grösste. weiss jemand eine andere möglchkeit bzw kann mir da wer eine einfach zu verstehende lösung geben ich bin in der hinsicht noch anfänger und mir fehlt da noch etwas programmiererfahrung

  • geht doch einfacher und ressourcen sparender :-p

  • na das ging ja super schnell danke für die rasche antwort ich werd es gleich mal testen aber klingt plausibel :)