Archiv verlassen und diese Seite im Standarddesign anzeigen : befehl für mittelwert?
Bluesmash
27.07.2005, 20:06
gibt es eigentlich keinen befehl um den mittelwert aus mehreren variablen zu berechnen? wie z.B. max() für den maximalwert? hab schon in meinem sprachbefehl buch gesucht hab aber nichts gefunden...
mfg bluesmash
Hab ich auch nix gefunden. es gibt MIN() und MAX(), sowas wie AVERAGE() is nicht
sebastian.heyn
28.07.2005, 09:01
beim mittelwert addierst du doch einfach die variablen zusammen und dividierst hinterher durch die anzahl, oder?
Da hast du recht. Aber es wär doch ungeschickt, wenn er das ausprogrammiert und dann sieht, daß es das schon fertig gibt.
sebastian.heyn
28.07.2005, 10:30
mmhh stimmt. passiert mir öfters, grins
Naja, es wäre eine Schleife und eine Division.
Ich glaube in diesem Fall wäre das nicht ganz so tragisch :P
Wenn's den Befehl gibt, wirst du ihn genau dann finden, wenn du die Funktion fertig programmiert hast, keine Minute früher.
Bluesmash
28.07.2005, 16:56
danke für die antworten! hab selber auch nichts mehr gefunden... muss es wohl doch ausschreiben...
mfg bluesmash
Sofern die Anzahl der Variablen, aus welchen Du dem Mittelwert berechnen willst, eine 2 ^ x ist, also bei 2, 4, 8, 16, .... Werten kannst Du anstatt der zeitaufwändigen Division ein Shift Right machen. Ein Shift Right entspricht einer Division durch 2.
dim w1 as Word
w1 = w1 + 12
w1 = w1 + 14
w1 = w1 + 7
w1 = w1 + 9
Shift w1, Right, 2
Dim s1 as Single
s1 = s1 + 12
s1 = s1 + 14
s1 = s1 + 7
s1 = s1 + 9
Shift s1, Right, 2
Es funktioniert bei positiven Ganzahlen (Byte, Word, Integer, Long) als auch bei Single.
Bei Durchschnitt aus 2 Werten brauchst Du Shift Right 1, bei 4 Werten: Right 2, bei 8 Werten: Right 3, bei 16 Werten Right 4 u.s.w.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.