Variablen Problem



  • Hallo,
    ich habe folgendes problem:
    ich schreibe ein kleines Programm welches mir Dezimalzahlen in Binärcodes und Hexadezimalzahlen umrechnet. Beim Hexa-system ist es aber so, dass die zahl 10 ein "A" ist. wie kann ich eine variable a als "A" ausgeben wenn sie davor als int deklariert war. Rest des Programms läuft ohne probleme.
    Ich schreibe in C++ mit Microsoft Visual Studio 2008

    MfG BrokenWings

    P.S: Danke schon mal im voraus. Wenn etwas unklar ist bitte ohne beleidigungen fragen...(leider schon des öfteren erlebt...)


  • Mod

    Meinst du so?

    #include <iostream>
    using namespace std;
    
    int main () {
      int n;
      n=70;
      cout << hex << n << endl;
      cout << dec << n << endl;
      cout << oct << n << endl;
      return 0;
    }
    

    Ich fürchte, ich habe gerade irgendwie dein ganzes Programm überflüssig gemacht 😃 .



  • Fehlt da nicht noch ein #include <iomanip> ?


  • Mod

    dot schrieb:

    Fehlt da nicht noch ein #include <iomanip> ?

    Ja. Das kommt davon, wenn man abschreibt.

    edit: Korrigiere: Nein! hex ist aus dem Header ios und ios ist garantiert in iostream eingebunden. Wenn man abschreibt, ist es eben manchmal doch richtig 😃 .



  • @SeppJ
    Ja klar das geht natürlich... 😃 aber ich wollte es so schreiben dass man die rechnungen duch den Quelltext nachvolziebar sind... und so siend sie das eben nicht...
    @ dot
    Nein benötigt man nicht...


  • Mod

    BrokenWings schrieb:

    @SeppJ
    Ja klar das geht natürlich... 😃 aber ich wollte es so schreiben dass man die rechnungen duch den Quelltext nachvolziebar sind... und so siend sie das eben nicht...

    Hmm, du willst Zahlen als Hex ausgeben, magst nicht die fertige Lösung aus der Standardbibliothek nehmen, willst aber nicht selber programmieren.

    Kombiniere, kombiniere.

    💡

    ➡ Du musst Hausaufgaben machen und hast keine Ahnung/Lust!



  • SeppJ schrieb:

    edit: Korrigiere: Nein! hex ist aus dem Header ios und ios ist garantiert in iostream eingebunden. Wenn man abschreibt, ist es eben manchmal doch richtig 😃 .

    Oh, tatsächlich...wieder was gelernt 😃



  • SeppJ schrieb:

    BrokenWings schrieb:

    @SeppJ
    Ja klar das geht natürlich... 😃 aber ich wollte es so schreiben dass man die rechnungen duch den Quelltext nachvolziebar sind... und so siend sie das eben nicht...

    Hmm, du willst Zahlen als Hex ausgeben, magst nicht die fertige Lösung aus der Standardbibliothek nehmen, willst aber nicht selber programmieren.

    Kombiniere, kombiniere.

    💡

    ➡ Du musst Hausaufgaben machen und hast keine Ahnung/Lust!

    ne ich mach das wirklich für mich...

    #include <iostream>
    using namespace std;
    const unsigned char ae = static_cast<unsigned char>(132);
    int main()
    {
    int a2,q,w,e,r,t,z,u,i,o,p,a,s,d,f,g,h,j,k,l,y,x,c,v,b,n,m,a1,q1,w1,e1,r1,t1,z1,u1,i1,o1,p1,s1,d1,f1,g1,h1,j1,k1,l1,y1,x1,c1,v1,b1,n1,m1;
    A:
    cout<<"Geben sie eine zahl zwichen 1 und 2147483647 ein:\t";
    cin>> a2;
    b=a2/2;
    c=static_cast<int>(a2)%2;
    a=b/2;
    d=static_cast<int>(b)%2;
    b=a/2;
    e=static_cast<int>(a)%2;
    a=b/2;
    f=static_cast<int>(b)%2;
    b=a/2;
    g=static_cast<int>(a)%2;
    a=b/2;
    h=static_cast<int>(b)%2;
    b=a/2;
    i=static_cast<int>(a)%2;
    a=b/2;
    j=static_cast<int>(b)%2;
    b=a/2;
    k=static_cast<int>(a)%2;
    a=b/2;
    l=static_cast<int>(b)%2;
    b=a/2;
    m=static_cast<int>(a)%2;
    a=b/2;
    n=static_cast<int>(b)%2;
    b=a/2;
    o=static_cast<int>(a)%2;
    a=b/2;
    p=static_cast<int>(b)%2;
    b=a/2;
    q=static_cast<int>(a)%2;
    a=b/2;
    r=static_cast<int>(b)%2;
    b=a/2;
    s=static_cast<int>(a)%2;
    a=b/2;
    t=static_cast<int>(b)%2;
    b=a/2;
    u=static_cast<int>(a)%2;
    a=b/2;
    v=static_cast<int>(b)%2;
    b=a/2;
    w=static_cast<int>(a)%2;
    a=b/2;
    x=static_cast<int>(b)%2;
    b=a/2;
    y=static_cast<int>(a)%2;
    a=b/2;
    z=static_cast<int>(b)%2;
    cout<<"Bin"<<ae<<"rcode lautet:\t"<<z<<y<<x<<w<<v<<u<<t<<s<<r<<q<<p<<o<<n<<m<<l<<k<<j<<i<<h<<g<<f<<e<<d<<c<<endl;

    b1=a2/16;
    c1=static_cast<int>(a2)%16;
    a1=b1/16;
    d1=static_cast<int>(b1)%16;
    b1=a1/16;
    e1=static_cast<int>(a1)%16;
    a1=b1/16;
    f1=static_cast<int>(b1)%16;
    b1=a1/16;
    g1=static_cast<int>(a1)%16;
    a1=b1/16;
    h1=static_cast<int>(b1)%16;
    b1=a1/16;
    i1=static_cast<int>(a1)%16;
    a1=b1/16;
    j1=static_cast<int>(b1)%16;
    b1=a1/16;
    k1=static_cast<int>(a1)%16;
    a1=b1/2;
    l1=static_cast<int>(b1)%16;
    b1=a1/16;
    m1=static_cast<int>(a1)%16;
    a1=b1/16;
    n1=static_cast<int>(b1)%16;
    b1=a1/16;
    o1=static_cast<int>(a1)%16;
    a1=b1/16;
    p1=static_cast<int>(b1)%16;
    b1=a1/16;
    q1=static_cast<int>(a1)%16;
    a1=b1/16;
    r1=static_cast<int>(b1)%16;
    b1=a1/16;
    s1=static_cast<int>(a1)%16;
    a1=b1/16;
    t1=static_cast<int>(b1)%16;
    b1=a1/16;
    u1=static_cast<int>(a1)%16;
    a1=b1/16;
    v1=static_cast<int>(b1)%16;
    b1=a1/16;
    w1=static_cast<int>(a1)%16;
    a1=b1/16;
    x1=static_cast<int>(b1)%16;
    b1=a1/16;
    y1=static_cast<int>(a1)%16;
    a1=b1/16;
    z1=static_cast<int>(b1)%16;
    cout<<"Hexadezimalsystem lautet:\t"<<z1<<y1<<x1<<w1<<v1<<u1<<t1<<s1<<r1<<q1<<p1<<o1<<n1<<m1<<l1<<k1<<j1<<i1<<h1<<g1<<f1<<e1<<d1<<c1<<endl;

    goto A;
    }

    hier das programm bis jetzt ich muss nur noch die zahle 10-15 in Buchstaben umwandeln lassen....


  • Mod

    Schon mal was von Kontrollstrukturen gehört? Schleifen, Funktionen?



  • Ja aber ich lerne erst seit ein paar wochen die programierung.... sryy dass ich noch nicht so "inteligent" bin ud dies alles anwenden kann... außerdem ist in visual studios alles geordnet gewesen... erst beim einfügen hier hat sich es verschoben...



  • Brauchst dich ja nicht dafür zu entschuldigen (für Code gibts hier die [cpp] Tags). Das Beispiel wär nur ideal um den Einsatz von Schleifen zu üben. Ich würd vorschlagen dass dus einfach gleich mal versuchst 😉



  • Alles Klar danke für den Tipp... DAnke auch noch ma für die anderen Tipps... 👍


Log in to reply