Maximum finden
-
Ich würde gerade den maximalen Wert aus dem Array Daten[320]; ermitteln. Gibt es dafür eine Funktion? ...danke
-
Was für ein Variabeln-Typ?
weiso nicht einfach eine for-schleife?
mfg
BigNeal
-
Tobi78 schrieb:
Ich würde gerade den maximalen Wert aus dem Array Daten[320]; ermitteln.
Gibt es dafür eine Funktion?
[...]ja
Tobi78 schrieb:
[...]
...dankeBitte
.
.
.

ps.: Stichwort Quicksort.
-
Er will ja nicht sortieren, sondern nur das Maximum finden. Dafür geht natürlich die Schleife. Man kann aber auch <algorithm> dafür bemühen.
Beispiel:double Array[320]; // nun irgendwie füllen double dmax = *std::max_element(Array, Array+320);
-
Ist ein INT Array! Danke schon mal!
-
int maxwert = 0; for(int i=0 ; i<320 ; i++) { if(maxwert<Array[i]) maxwert = Array[i]; }liebe grüße
tim
-
Diese Schleife würde das Maximum nicht finden, wenn alle Werte negativ sind. Dann eher so
int maxwert = Array[0]; for(int i=1 ; i<320 ; ++i) { if(maxwert<Array[i]) maxwert = Array[i]; }oder so
int maxwert = Array[0]; for(int i=1 ; i<320 ; ++i) maxwert = std::max(maxwert,Array[i]);oder wie oben beschrieben, nur mit int statt double
-
ihr seid echt cool guys
dann machen wir halt den maxwert erstmal auf -32535^^
-
achso ja braunstein
du lässt so auch Array[1] aus.
überlege mal du fängst bei i=1 an und machst ++i also gleich schon bei 2
-
Da hast du die for-Schleife falsch verstanden. Der Index wird erst nach Abarbeiten des inneren Codes hochgezählt. Hier werden schon alle Elemente berücksichtigt. Das mit dem ++i ist eigentlich nur Gewohnheit. Zu diesem Thema gibt es einen interessanten Beitrag in der C++-Forum FAQ.
-
Noch etwas.
Dein Wert von -32535 wäre unportabel und hier sowieso zu klein. Sieh mal in die Hilfe wie klein int werden kann. Alternativ dazu gibt es noch std::numeric_limits<int>::min(); aus der <limits>.
-
hmm ich dachte immer ++i wird sofort hochgezählt.
-
dan solltest du mal die Grundlage von der for-schleife nochmals besser studieren

mfg
BigNeal
-
initialisierung
bedingung
lauf
wertänderung
bedingung
lauf
wertänderung
.
.
.hast ja recht.
