Der kleine Unterschied...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Der kleine Unterschied...

    Hallo Leute,

    oft kommt es ja auf den kleinen Unterschied an, aber wie berechne ich den?

    Ich habe da z.B die Löhne von vier Mitarbeitern:

    $x1 = 650;
    $x2 = 530;
    $x3 = 1020;
    $x4 = 860;

    Jetzt möchte ich aber von meinem Script gerne wissen wie Groß die Differenz vom Schlecht- zum Bestverdienenden ist.

    Kann ich das mit implode() in ein Array ziehen und dann auswerten oder was mache ich da?

    Über ein kleines Script währe ich sehr dankbar.
    Die $x-Reiche sollte sich auch beliebig verlängern lassen.

    Dank sagt euer Andi

  • #2
    hmm,

    warum schreibst du das nicht alles direkt in ein Array, as würde die ganze Sache vereinfachen ! So muss man doch erstmal etwas rumwerkeln und tricksen.

    Kommentar


    • #3
      Am besten wäre natürlich, alles erstmal in ein Array zu lesen:
      $i=1;
      $var = 'x'.$i;
      while(isset($$var)) { $i++; $arr[]=$$var; $var = 'x'.$i; }

      #dann folgendes:
      $high = 0;
      $low = 10000000;
      for($i=0; $i<count($arr); $i++)
      {
      if($arr[$i]>$high) $high = $arr[$i];
      if($arr[$i]<$low) $low = $arr[$i];
      }
      $diff = $high - $low;
      print $diff;

      So sollte es dann klappen.

      MfG
      Juggler
      MfG
      Juggler

      Kommentar


      • #4
        Die Werte $x1- x4 kommen alle aus einer Datenbank.
        Also liegen sie sowieso einzeln vor und müssen erst mal ein ein Array gapackt werden oder was was ich.
        In meinem doofen Buch steht auch nicht drinn.

        Ah aber da habe ich eine Idee:

        Ich kann die Werte hintereinander in eine Variable schreiben, quasi:
        $alle_werte = $x1 . "," . $x2 . "," .$x3 . "," .$x4;
        dann hole ich die mir mit explode() in ein $array.
        Dieses kann ich dann sortieren, am besten numerisch absteigend.
        Da weis ich noch nicht wie.
        Dann lese ich die erste Position des Arrays aus und subtrahiere sie mit der letzten Position.
        Schon habe ich die Differenz.

        Wie sortiere ich ein Array numerisch?
        Laut Buch funktioniert sort() nur alphabetisch.

        Also, ich bitte um Ideen...

        Grüße & Dank, Andi

        Kommentar


        • #5
          wenn die Werte aus einer DB kommen kannst du sie doch ganz einfach an ein Array übergeben:

          $query = ""; #irgendein Query
          $result = mysql_query($query);
          while($row = mysql_fetch_array($result)) {
          $x[] = $row["Spalte"];
          }

          Oder irre ich mich da jetzt total?

          MfG
          Juggler
          PS.Tut der Code aus dem anderen Post nicht?
          MfG
          Juggler

          Kommentar


          • #6
            Jo, danke Juggler,

            der code läuft prima.
            War nur eben mein Comment an JoelH am schreiben, während Du geantwortet hattest.

            Klasse, ja danke noch mal.

            Gruß, Andi

            Kommentar

            Lädt...
            X