Dual in Dezimal umrechnen Mit String



  • Hallo Profis,

    ich bräuchte Hilfe bei einem Programm zur Umrechnung von Dual in Dezimalzahlen.

    Ich bin seit Wochen an der Aufgabe ein Programm zu schreiben aber komme einfach nicht weiter. 😞
    Ich würde es gerne über einen String machen. Und zwar habe ich folgenden Code geschrieben.

    [/code]
    #include <iostream>
    #include <string>

    using namespace std;

    int main()
    {
    //Initialisierung der Variablen und des String
    string zeichenkette;
    int potenz = 1;
    int ergebnis = 0;

    //Einlesen der Dualzahl, in den String
    cout << "Bitte die umzurechnende Zahl eingeben: "<< endl;
    cin >> zeichenkette;

    //Sring von rechts nach lings
    for(int i = zeichenkette.length() -1; i >= 0; i--)
    {
    if(zeichenkette[i]=='1')
    {
    ergebnis=ergebnis+potenz;
    }
    ergebnis=ergebnis*2;

    }

    //Ergebniss ausgeben
    cout << "Die eingegebene Dualzahl hat im Dezimalsystem folgenden Wert: "<<endl;
    cout <<ergebnis;

    return 0;

    Das Problem ist das die Lösung nicht stimmt und ich nicht weiß wie ich die zweite Schleife hin bekomme um die Potenz bei jeden Durchlauf zu erhöhen.

    Für eure Hilfe wäre ich sehr Dankbar.



  • ergebnis=ergebnis*2; => potenz=potenz*2;

    Ein Debugger hilft.
    Vorschau vor dem Absenden zeigt einem, wenn die Formatierung falsch ist.



  • Hey manni66,

    vielen Dank für die schnelle Antwort!

    und es funktioniert...ich glaub es nicht. ich habe Stunden nach dem sch...Fehler gesucht. Hammer! Vielen vielen Dank!!!

    Andere Frage: Was ist ein Debugger?
    Und welche Formatierung meinst du?

    MFG



  • Shadow09 schrieb:

    Andere Frage: Was ist ein Debugger?

    https://de.wikipedia.org/wiki/Debugger
    könnte man auch selber suchen

    Shadow09 schrieb:

    Und welche Formatierung meinst du?

    Dem [/code] nach hast du versucht, den Code formatiert einzufügen. Das hat aber offensichtlich nicht geklappt.


Anmelden zum Antworten