Sortieren von Zahlen
-
Hallo,
ich bin gerade dabei ein Mikrocontroller zu programmieren.
Habe sechs Variable, die jeweils Zahlen (ein- oder zweistellig) enthalten.Nun möchte ich diese Zahlen in aufsteigender Reihenfolge sortieren.
Wie macht man das ?Anschl. werden die Zahlen am LC-Display angezeigt.
Das klappt auch bereits, jedoch bisher ohne Sortierung.lg
-
Also ich würde hier gerade mal auf die STL verweisen.
Dort kannst du das ganz einfach sortieren. Und falls du die nicht benutzen kannst, kannst du selber einen Algo schreiben. -> bubblesort
-
Pack die Zahlen in ein Array oder einen Container (wenn das nicht schon geschehen ist) und lass std::sort drüberlaufen.
-
Hallo,
danke für eure schnellen Antworten !
Da ich noch ziehmlich wenig Ahnung vom Programmieren habe, sagt mir das alles nichts.
... Algo schreiben, Array, ContainerKann mir das mal jemand erklären, so dass ich es auch versehe ?
lg,
-
Wenn du nicht weißt, was ein Array ist, solltest du eventuell den Microcontroller erstmal beiseite packen und noch ein paar Seiten in deinem C++-Buch lesen
Das sind die absoluten Basics, ohne die wirst du nicht weit kommen.
-
Na vielen Dank - das hilft mir jetzt aber
Jetzt soll ich mir noch schnell ein Buch kaufen und die Programmiersprache lernen, nur um ein kleines Projekt zu verwirklichen. Ich will schließlich nicht mein Leben mit dem Programmieren verbringen.
Wenn man ein Stück Kuchen essen möchte, muss man ja auch nicht eine ganze Bäckerlehre machen !
-
musst dir ja kein buch kaufen, es gibt im Internet genug tutorials, aber wie pumuckl schon sagte, wenn du nicht mal weißt was ein Array oder ein Algo(Algorhythmus) dann solltest du die finger vom Microcontroller lassen, denn ohne das vorwissen bist du da aufgeschmissen.Sieh dich mal im Internet nach "bubblesort" um oder geh auf die Seite. www.gidf.de
-
Herby99 schrieb:
Wenn man ein Stück Kuchen essen möchte, muss man ja auch nicht eine ganze Bäckerlehre machen !
Aber wenn man eins backen will, sollte man wissen, dass man dazu Mehl braucht.
-
Herby99 schrieb:
Wenn man ein Stück Kuchen essen möchte, muss man ja auch nicht eine ganze Bäckerlehre machen !
Wir reden hier nicht um triviale Probleme sondern um komplexe Abläufe. Falls du willst das es dir jemand macht kannst du ja gerne Geld anbieten und es im Projekte Subforum anbieten.
Um eine Sprache zu sprechen muss ich auch einen Sprachkurs oder viel Zeit investieren. Und sei es das ich mich auf die Bereiche begrenze die ich dafür brauche.
cu André
-
Herby99 schrieb:
Wenn man ein Stück Kuchen essen möchte, muss man ja auch nicht eine ganze Bäckerlehre machen !
Wenn man ein Stück Kuchen essen möchte, aber selber nicht backen kann, dann muss man den Kuchen kaufen.
-
Mein kleines Programm läuft auch so, auch ohne Sortierung - und stellt euch vor, dass hab ich ganz ohne Sprachkurs, Algo, Array und was es da noch so für Dinger gibt, hinbekommen.
Wenn mir keiner sagen kann (oder will), wie man Zahlen sortiert, dann bleiben sie eben unsortiert - ist doch ganz einfach
Sortiert wäre vielleicht schöner, aber keinesfalls notwendig.Großen Aufwand möchte dafür nicht treiben; War ja nur ne einfache Frage, und ich dachte, da gibt es auch eine genauso einfache Lösung dafür.
-
int main() { int array[6] = {3, 66, 23, 50, 45, 2}; for (int i = 1, tmp; i < 6; i++) { LABEL: if (array[i-1] > array[i]) { tmp = array[i-1]; array[i-1] = array[i]; array[i] = tmp; i = 1; goto LABEL; } } }
-
Herby99 schrieb:
Großen Aufwand möchte dafür nicht treiben; War ja nur ne einfache Frage, und ich dachte, da gibt es auch eine genauso einfache Lösung dafür.
Ich stimme meinen Vorpostern zu, dass du eigentlich ein Tutorial durcharbeiten solltest; nichtsdestotrotz kann ich verstehen, dass du gerade einfach nur die Lösung möchtest.
// Deine Variablen.. int v1, v2, v3, v4, v5, v6; // .. könnten genauso gut in einem Array gespeichert sein: int v[6]; v[0] = 12; //... v[5] = 9; // v[5] ist letztes Element std::sort( &v[0], &v[6] );
Und du musst den Header
<algorithm>
einbinden.
-
Herby99 schrieb:
Mein kleines Programm läuft auch so, auch ohne Sortierung - und stellt euch vor, dass hab ich ganz ohne Sprachkurs, Algo, Array und was es da noch so für Dinger gibt, hinbekommen.
Wenn mir keiner sagen kann (oder will), wie man Zahlen sortiert, dann bleiben sie eben unsortiert - ist doch ganz einfach
Sortiert wäre vielleicht schöner, aber keinesfalls notwendig.Du belästigst uns hier also mit Dingen, die dir total unwichtig sind und willst dann auch noch eine Lösung für Problem haben ohne nur einen Funken von Eigeninitiative zu zeigen?
Herby99 schrieb:
Großen Aufwand möchte dafür nicht treiben; War ja nur ne einfache Frage, und ich dachte, da gibt es auch eine genauso einfache Lösung dafür.
Ja die gibt es. Aber du verstehst sie warscheinlich nicht einmal, wenn du nicht mal weist, was ein Array ist.
Hier ist eine: Bubble Sort
P.S.: Lesen
-
Um den Verlauf der ersten Postings mal in dein Kuchen-Analogon zu übersetzen:
Herby99: Ich habe ein paar Erdbeeren und möchte daraus einen Kuchen machen, wie geht das?
drakon: Pack die Erdbeeren in ne Fertigtorte
pumuckl: Nimm dir einen Tortenboden, pack die Erdbeeren drauf und kipp Gelatine drüber.
Herby99: Fertigtorte? Tortenboden? Gelatine? Was ist das? Ich will nicht in Muttis Kochbuch gucken, ich will nur Kuchen!
-
pumuckl schrieb:
Um den Verlauf der ersten Postings mal in dein Kuchen-Analogon zu übersetzen:
Herby99: Ich habe ein paar Erdbeeren und möchte daraus einen Kuchen machen, wie geht das?
drakon: Pack die Erdbeeren in ne Fertigtorte
pumuckl: Nimm dir einen Tortenboden, pack die Erdbeeren drauf und kipp Gelatine drüber.
Herby99: Fertigtorte? Tortenboden? Gelatine? Was ist das? Ich will nicht in Muttis Kochbuch gucken, ich will nur Kuchen!Ich LIEBE solche schönen Metaphern.
@Herby99
Wenn du mehr machen willst, als mit dem Lego-Baukasten rumzuspielen und dort ein paar LED's zum leuchten zu bringen, dann kommst du nicht drum herum etwas zu lesen.
Anderseits kannst du auch einfach alles ignorieren und dich freuen über dein "Erfolg"..
Wenn du aber eh nichts lernen willst, dann ist das für mich ein Rätsel, wofür du das überhaupt machst.
-
Herby99 schrieb:
Mein kleines Programm läuft auch so, auch ohne Sortierung - und stellt euch vor, dass hab ich ganz ohne Sprachkurs, Algo, Array und was es da noch so für Dinger gibt, hinbekommen.
Was macht denn Dein Program?
-
So, wie ich das verstanden habe, gibt es ein paar Zahlen unsortiert aus.
Was der Sinn dabei ist ...
-
Und du musst den Header <algorithm> einbinden.
Hallo Badestrand,
wie geht das mit dem <algorithm> einbinden ?
lg
-
Herby99 schrieb:
wie geht das mit dem <algorithm> einbinden ?
#include <algorithm>
Soviel zu den Basics ... ich verstehe nicht, wie du irgendwas schreiben konntest, das funktioniert ... und sowas komplexes macht, wie Zahlen ausgeben.