Hallo,
ich möchte von zwei aufeinanderfolgenden Werten den Mittelwert berechnen und anschließend ein neues Array erstellen.
Es stehen z.B. die Werte 1;6;3;5;4;9 in einem Array.
Das neue Array soll dann wie folgt aussehen: 3,5 ; 4 ; 6,5.
Das heißt es soll der Reihe nach von jedem Paar der Mittelwert gebildet werden und anschließend in ein Array geschrieben werden.
Könnte mir jemand ein kleines Bsp.-Programm schreiben?
Vielen Dank.
MfG, Miki.
Hi Miki,
zunächst frage die Anzahl der Elemente des Arrays ab und halbiere sie (abgerundet).
Dann starte damit eine For-Schleife. Der Knackpunkt ist, das du aus dem Schleifenzähler "i", der von "0" beginnend inkrementiert eine Zahlenfolge berechnest, die deinen Zugriffen auf Array entsprechen.
Also in deinem Fall: "0, 2, 4, 6, 8 usw.
Hier heute mal ganz einfach: "i*2" :roll:
Damit holst du dir das berechnete und das folgende Element heraus, berechnest den Mittelwert und führst das Ergebnis aus dem Array heraus.
Dabei wird aus dem Skalaren Wert automatisch ein Array werden.
Fertig
Gruß
Oliver
Danke schon mal für deine Ratschläge. Leider komme ich aber mit Hilfe derer auch nicht so recht ans Ziel.
Habe mal meinen aktuellen Stand als Anlage angefügt.
Hier hast du es.
Gruss, Eugen
Danke für eure Beispiele!
Sie haben mir weitergeholfen.
MfG.
Hallo Leutz,
angenommen die Werte in einem Array treten nicht immer paarweise auf, sondern nur vereinzelt und das noch vollkommen unregelmäßig.
Das heißt, dass zwischen den Paarwerten immer mal wieder mehrere Einzelwerte auftreten. Ich möchte aber nur die Paarwerte mitteln und die Einzelwerte aussen vorlassen.
Wie mache ich das?
Miki
z.B.
Original-Array: 6 6 7 1 4 6 7 8 8 6 3 9 9
Wunsch-Array: 6 7 1 4 6 7 8 6 3 9
Jetzt aber,
wie willst du den die Paarwete und Einzelwerte im Originalarray voneinander unterscheiden?
Gruss
@ eugen graf
Hallo,
also ich habe mir das wie folgt gedacht:
- schrittweise durchs Array gehen
- immer kontrollieren, ob der Nachfolger gleich dem aktuellen Wert ist, wenn ja, dann Mittelwert des aktuellen und des Nachfolgers bilden und diesen in ein neues Array speichern --> anschließend zwei Schritte weitergehen
- wenn keine Identität herrscht, also der aktuelle Wert und der Nachfolger nicht identisch sind, dann Einzelwert ins neue Array schieben und anschließend nur einen Schritt weitergehen
- usw.
Algorithmus verstanden?
Miki.
Zitat:- immer kontrollieren, ob der Nachfolger gleich dem aktuellen Wert ist, wenn ja, dann Mittelwert des aktuellen und des Nachfolgers bilden und diesen in ein neues Array speichern --> anschließend zwei Schritte weitergehen
Mittelwert zweier gleichen Zahlen ist die Zahl selbst.
Du willst also nur von ungleichen Zahlen Mittelwert bilden.
Oder willst du nur aus zwei gleichen Zahlen nur eine Zahl machen und den Rest behalten?
Gruss