Sortieren



  • Also wenn ich ein Rennen machen will dann muss ich ja die Fahrer nach der Position sortieren. Ich hab die eingabe jetzt schon gemacht aber wie kann ich die jetzt sortieren.
    #include <iostream.h>

    char Name1[100],Name2[100],Name3[100],Name4[100],Name5[100];
    int Pos1,Pos2,Pos3,Pos4,Pos5;

    int main(){

    cout << "Geben sie den Name 1 ein:";
    cin >> Name1;

    cout << "Geben sie die Position von " << Name1 << " ein:";
    cin >> Pos1;

    cout << "Geben sie den Name 2 ein:";
    cin >> Name2;

    cout << "Geben sie die Position von " << Name2 << " ein:";
    cin >> Pos2;

    cout << "Geben sie den Name 3 ein:";
    cin >> Name3;

    cout << "Geben sie die Position von " << Name3 << " ein:";
    cin >> Pos3;

    cout << "Geben sie den Name 4 ein:";
    cin >> Name4;

    cout << "Geben sie die Position von " << Name4 << " ein:";
    cin >> Pos4;

    cout << "Geben sie den Name 5 ein:";
    cin >> Name5;

    cout << "Geben sie die Position von " << Name5 << " ein:";
    cin >> Pos5;

    cout << endl << "Liste" << endl;
    cout << Name1 << " ist Position " << Pos1 << endl;
    cout << Name2 << " ist Position " << Pos2 << endl;
    cout << Name3 << " ist Position " << Pos3 << endl;
    cout << Name4 << " ist Position " << Pos4 << endl;
    cout << Name5 << " ist Position " << Pos5 << endl;
    return 1;
    }
    Das Problem ist ja wenn ich das im Rennen einbaue ändert sich die Position immer und dann stimmts wieder nicht mehr.

    Mein erster Text ist gespert und ich weis nicht wie ich den wieder aufsperren kann darum hab ich einen neuen gemacht.



  • Auch wenns nun irgendwie dumm klingt: Hast du die Reihefolge Denken -> Schreiben -> Durchlesen -> Abschicken eingehalten? Ich hab keine Ahnung von was du redest.

    1. Es heißt #include <iostream>, alle C++ Header mit der Extension .h sind veraltet. Nun befindet sich alles im namespace std. Wenn dir das nichts sagt schreib einfach using namespace std; darunter.
    2. Verwende besser std::string (#include <string>) anstatt char-Arrays.
    3. Das Forum hier hat Code-Tags, dann wird der COde formatiert...
    4. Um das zu verstehen muss man wohl nicht unbedingt "richtig gut" C++ können. (siehe anderer Thread, der inzwischen closed ist)

    Was hat das ganze nun mit sortieren zu tun? Wo ist die Frage?

    Gruß



  • Ich will die Liste mit den Namen halt sortiert ausgeben.
    Jetzt ist die so wie ich sie eingebe.

    Also die:

    Max ist Position 2
    Bob ist Position 4
    Tommy ist Position 1
    Bill ist Position 3

    Ich will aber soeine:

    Tommy ist Position 1
    Max ist Position 2
    Bill ist Position 3
    Bob ist Position 4

    Wie macht man die Ausgabe so das die Reihenfolge stimmt?



  • speichere deine Werte in einem vector<pair<int,string> > und sortiere sie bei Bedarf mittels std::sort.


Anmelden zum Antworten