Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Array sortieren Kategorie: Programmierung (von nitraM - 19.08.2010 7:59)
Als Antwort auf Array sortieren von Henry M. - 18.08.2010 20:37
Ich nutze:
C164CI-ControllerBoard, eigenes Board, OSOPT V3.0, OSOPT V3.1
> Hallo Community,
> ich habe folgendes Problem, welches ich bisher noch nicht lösen konnte.
> Ich habe ein Array mit 10 Feldern, welche mit Messwerten vom Typ Float gefĂĽllt sind.
> Ich will die beiden grössten und die beiden kleinsten Messwerte entfernen und dann aus den restlichen
> Werten den Mittelwert bilden. Mit der math.fmax und math.fmin-Funktion kann ich allerdings immer
> nur zwei Werte vergleichen.
> Meine Idee war jetzt eine Funktion zum sortieren zu verwenden, um die Messwerte der Grösse nach zu
> sortieren und danach die beiden kleinsten und beiden grössten zu entfernen.
> Eine Funktion zum sortieren habe ich allerdings nicht finden können. Gibt es so etwas nicht, oder
> stelle ich mich nur zu blöd an? Irgendwie stehe ich gerade auf dem Schlauch...
> Vielleicht kennt jemand eine Lösung für mein Problem?
>
> MfG HenryM

Hallo Henry,
eindimensionale Array's lassen sich ganz einfach aufsteigend sortieren...

Bei 10 Feldern schaut das so aus:

....schnipp...

 float wert[10];
 float i; // Zwischenspeicher
 int x; // Zähler
 int y; // Zähler

  for x = 0...10
  {for y = 0...9
   {if wert[y] > wert[y+1]
    {i = wert[y+1];
     wert[y+1] = wert[y];
     wert[y] = i;
    }
   }
  }

   ...schnapp...

nitraM


    Antwort schreiben


Antworten:

Re: Array sortieren (von nitraM - 19.08.2010 11:34)
    Re: Array sortieren (von Henry M. - 19.08.2010 18:46)