[C/C++] anfänger script mit anfänger problem ^^

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von s1nu, 2. November 2007 .

Schlagworte:
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 2. November 2007
    anfänger script mit anfänger problem ^^

    hallo Leute^^

    also bin noch sehr unerfahren und wolllt euch um hilfe fragen
    also.. aufgabenstellung ist folgende:

    ein programm in dem man 3 ganze zahlen eingibt
    diese sollten dann nochmal ausgegeben werden aber sortiert mit der kleinsten zahl zu beginn ^^
    hab mal bissl rumgespielt und hab jetz das hier rausbekommen funktioniert aber kein bisschen so ^^

    Code:
    #include <iostream>
    using namespace std;
    
    int main()
    {
     int a, b, c;
     cout << "Geben Sie eine 3 Zahlen ein: " << endl <<endl;
     cin >> a;
     cin >> b;
     cin >> c;
     cout << endl;
     
     if(a<b)
     cout << a << endl;
     else
     
     if(a<c)
     cout << a << endl;
     else
     
     if(b<a)
     cout << b << endl;
     else
     
     if(b<c)
     cout << b << endl;
     else
     
     if(c<a)
     cout << c << endl;
     else
     
     if(c<b)
     cout << c << endl;
     else
     
     getchar();
     return 0;
    } 
    ich weiß dass das hier blödsinn is aber könnte mir wer sagen wie es richtig geht? bitte :)
    bw is natürlich drinn
     

  2. Anzeige
  3. #2 2. November 2007
    AW: anfänger script mit anfänger problem ^^

    Ein Sortieralgorithmus :)

    Ich würde ne Struktur erstellen, die eine Zahl repraesentiert. Diese Struktur beinhaltet dann einmal den wert der Zahl und einmal die Position der Variable (die kleinste Zhl soll später die Position 0 haben). Dann muss man sich ne Schleife nehmen, die solange läuft, bis die Zahlen sortiert sind. In der Schleife muss dann die größer/kleiner Prüfung gemacht werden. Das jetzt alles näher auszuführen würde zu lang werden. Wenn du dich bis heute abend gedulden kannst, programmier ich dir das nachher schnell...

    MFG
    Pacman
     
  4. #3 2. November 2007
    AW: anfänger script mit anfänger problem ^^

    les dir mal ein artrikel zum thema bubble sort auf wikipedia durch :D
    der lässt sich eigentlich recht einfach programmieren ^^
     
  5. #4 2. November 2007
    AW: anfänger script mit anfänger problem ^^

    nicht noetig... ;) habs schon fertig. habs dochn noch einfacher gemacht. Wie mein Vorgänger schon meinte ist es echt simpel...
    Hier der Code:

    Code:
    #include <iostream>
    
    using namespace std;
    
    int main(void)
    {
     cout << "Wieviele Zahlen moechten Sie sortieren?\n";
     int count = 0;
     cin >> count;
    
     //entsprechend grosses array anlegen
     int *Numbers = new int[count];
    
     //Zahleneingabe vom Benutzer
     for(int i=0; i<count; i++)
     {
     cout << "Zahl " << i+1 << ": ";
     cin >> Numbers[i];
     }
    
     //Hier wird sortiert
     //Das Array wird insgesamt count² mal durchlaufen
     for(int j=0; j<count-1; j++)
     {
     for(int i=0; i<count-1; i++)
     {
     //Dabei wird uberprueft, ob die naechste Zahl groesser ist, als die, bei der die Schlefe gerade ist
     if(Numbers[i] > Numbers[i+1])
     {
     //Wenn ja, tauschen die Zahlen die Plaetze im Array
     int buffer = Numbers[i];
     Numbers[i] = Numbers[i+1];
     Numbers[i+1] = buffer;
     }
     }
     }
    
     //und ausgeben
     for(int i=0; i<count; i++)
     {
     cout << Numbers[i] << " ";
     }
    
     delete[] Numbers;
    };
    
    Der Code erklärt sich eigentlich von selbst. Solltest du dennoch fragen haben -> PN


    MFG
    Pacman

    PS: Das ist sicherlich nicht die Muterlösung, da das Array wahrscheinlich in den meisten Fällen viel öfter durchlaufen wird als es muss. Ich bin vom Schlechtesten Fall ausgegeangen und da die 3 Funktionen in der if-Abfrage einen modernen Rechner nicht groß beanspruchen, hab ich mir gedacht, dass man diesen Performanceverlust ruhigen Gewissens in Kauf nehmen kann... ;)
     

  6. Videos zum Thema
Die Seite wird geladen...