Dualzahl in Binärzahl in Array



  • Wie muss ich das einbinden? Ist das ein eigenständiger Befehl, welcher meine Berechnung gar nicht braucht?

    MFG



  • Schau mal hier: http://www.cplusplus.com/reference/stl/vector/

    Hier ein Beispiel:

    #include <iostream>
    #include <vector>
    using namespace std;
    
    int main()
    {
    int zahl,rest;
    vector<int> Dualzahl;
    
    cout << "Eingabe der Zahl: ";
    cin >> zahl;
    
    do
    {
             rest=zahl%2;
             Dualzahl.push_back(rest);
             zahl=zahl/2;
    }
    while (zahl>0);
    
     for(int i=Dualzahl.size()-1;i>=0;i--)
     {
            cout<<Dualzahl[i];
     }
    
    return 0;
    }
    


  • Ausgabe geht auch so:

    std::copy(to_vector.begin(), to_vector.end(), 
                  std::ostream_iterator<int>(std::cout, ""));
    


  • Die Ausgabe in diesem Vector (dynamisches Array -> sowieit ich verstanden habe!?) erfolgt ja dennoch über eine herunterzählende for-Schleife. Ich möchte jedoch die Ausgabe nicht in einer for-Schleife sondern die Binärezahl als ganzes ausgeben.
    Sprich:

    cout << Dualzahl;

    (und nicht jede einzlene Position)



  • evo-style schrieb:

    Ich möchte jedoch die Ausgabe nicht in einer for-Schleife sondern die Binärezahl als ganzes ausgeben.
    Sprich:

    cout << Dualzahl;

    (und nicht jede einzlene Position)

    Dann brauchst du das Ganze wohl in einem std::string, oder du machst eine Operatorüberladung für std::vector<int>.



  • evo-style schrieb:

    Die Ausgabe in diesem Vector (dynamisches Array -> sowieit ich verstanden habe!?) erfolgt ja dennoch über eine herunterzählende for-Schleife. Ich möchte jedoch die Ausgabe nicht in einer for-Schleife sondern die Binärezahl als ganzes ausgeben.
    Sprich:

    cout << Dualzahl;

    (und nicht jede einzlene Position)

    Was stört dich an

    daddy_felix schrieb:

    Ausgabe geht auch so:

    std::copy(to_vector.begin(), to_vector.end(), 
                  std::ostream_iterator<int>(std::cout, ""));
    


  • Hab ich erst jetzt gesehn, sorry. Muss mir dass noch genau anschauen. Da ich erlich gesagt nicht ganz Alles verstehe, und darum zum Teil auch nicht ganz genau weiss, wie man es einbinden muss...

    Aber vielen Dank schonmal.



  • ich empfehle dir, dass du erstmal in Ruhe std::vector ansiehst. Zum Einbinden brauchst du lediglich "#include <vector>".



  • Werde sehen ob ich was finde. Das Problem ist einfach, dass wir das in der Schule nie hatten. Und ich möglicherweise darum nicht dartauf gekommen bin. Desshlab wollte ich es auch in einen String reinpacken...



  • Habe Sachen über das std::vector angeschaut. Leider verstehe ich es nicht wirklich. Ist es nicht möglich einfach das Array in int=Dualzahl oder float oder so umzuwandeln?
    Da wird diese std:: leider auch nicht in der Schule hatten, habe ich leider keinerlei Unterlagen dazu.


Anmelden zum Antworten