Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit Arrays

Einklappen

Neue Werbung 2019

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

  • Problem mit Arrays

    Hallo Leute ich bin am Verzweifeln weil es so viele Array Funktionen gibt, aber keine die mir hilft

    Ich habe ein Array Beispiel $xydata1 = array(1,2,3,4,5)

    Nun will ich erreichen dass ich immer den Wert 1+2 zusammenzählen kann ihn durch 2 teile (weil es zwei Wetre waren) und diesen Wert dann in einem neuen Array speichere. Danach will ich dann Wert 1 + 2 + 3 zusammen zählen und diesen durch 3 teilen. Ich habe alle möglichen Schleifen ausprobiert aber es klappt einfach nicht.

    Da die Erkläung vielleicht etwas schwer verständlich ist folgendes: Leihenhaft könnte man es so lösen -> siehe Code. Also das Ergebnis das heraus kommt stimmt, aber es ist Code ohne Ende:

    PHP-Code:
    array_push($ydatamw1,$ydata1["1"]);
    array_push($ydatamw1,($ydata1["1"] + $ydata1["2"])/3);
    array_push($ydatamw1,($ydata1["1"] + $ydata1["2"] + $ydata1["3"])/4);
    array_push($ydatamw1,($ydata1["1"] + $ydata1["2"] + $ydata1["3"] + $ydata1["4"])/5);
    array_push($ydatamw1,($ydata1["1"] + $ydata1["2"] + $ydata1["3"] + $ydata1["4"] + $ydata1["5"])/6);
    array_push($ydatamw1,($ydata1["1"] + $ydata1["2"] + $ydata1["3"] + $ydata1["4"] + $ydata1["5"] + $ydata1["6"])/7); 
    usw... das ganze ist für 53 Werte und daher ganz schön viel Code, ich denke das lässt sich garantiert eleganter lösen?!

    Vielen Dank vorab!

  • #2
    for-Schleifen

    PHP-Code:
    <?php
    $ydata1 
    = array(1=>1,2=>2,3=>3,4=>4,5=>5);
    $data count($ydata1) + 1;
    $ydatamw1 = array();
    for(
    $i 2;$i $data$i++) {
           for(
    $z 1$z <= $i$z++) {
               
    $newarray += $ydata1[$z];
          }
         
    array_push($ydatamw1,$newarray/$i);
         
    $newarray 0;
    }
    ( ungetestet )
    "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

    Kommentar


    • #3
      und wie steuere ich damit, dass die Schleife bei 53 endet? vermutlich mit der +2?

      Kommentar


      • #4
        -.-
        Ich liefere dir eine fertige Lösung. Da kann ich wohl erwarten dass du selbst schaust was der code macht oder?
        count zählt die array-Elemente.
        d.h. er macht das so lange bis dein array durchlaufen wurde.

        cu
        Grüße
        "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

        Kommentar


        • #5
          Wenn du fortlaufende Zahlen hast, kannst du den "kleinen Gauß" benutzen:
          Gaußsche Summenformel – Wikipedia
          Dann musst du den Array nicht durchlaufen, sondern du berechnest das Ergebnis direkt Anhand von "n".
          "[URL="http://www.youtube.com/watch?v=yMAa_t9k2VA&feature=youtu.be&t=25s"]Mein Name ist Lohse, ich kaufe hier ein.[/URL]"

          Kommentar

          Lädt...
          X