ich brauche dringend hilfe



  • Hallo ich lerne Grade c++,und ich habe hier bei ein Problem

    Include<iostream>
    Include<limits>

    Int main(void) { //das Programm bei der ausführung
    Int i=1;
    Cout<< i-- <<'\n'; //-1
    Cout<<++i <<'\n'; //-1
    Cout<<i++ <<'\n'; //-1
    Cout<<++i <<'\n'; //-3
    Return 0;
    }
    Das Problem ist,das ich nicht weiß wie ich das aus
    Rechne,das ich selber auf die werte komme



  • Was das genau macht sollte doch in deinem Buch/Tutorial stehen, welches du durcharbeitest?

    PS: Dein Threadtitel ist nicht sehr aussagekräftig, Hilfe braucht hier jeder, das hat ein Forum (Dieses Forum/Diese Kategorie) so an sich.

    Edit: Die in Kommentaren angegebenen Werte können eigentlich garnicht stimmen, und außerdem sollte das nichtmal kompilieren.



  • pasi94 schrieb:

    Das Problem ist,das ich nicht weiß wie ich das aus
    Rechne,das ich selber auf die werte komme

    Die Kacke kompiliert doch nichtmal. Und selbst wenn kommt nicht raus was in den Kommentaren steht.



  • Was das macht weiß ich ja, aber wie mann das aus rechnet
    Ohne das zu compileren weiß ich nicht,das ich selber auf
    Denn wert komme



  • Das muss da raus kommen steht so
    In mein buch



  • Mal abgesehen von dem was oben gesagt wurde:

    std::cout << i++;
    // entspricht praktisch
    std::cout << i;
    i = i + 1
    //---------------------------------
    std::cout << ++i;
    // entspricht praktisch
    i = i + 1;
    std::cout << i;
    

    Detailiertere Informationen findet man auch im Internet. (Postfix Inkrement, Präfix Inkrement)

    EDIT: Welches Buch ist das denn?
    EDIT 2: Nun, würde das kompilieren, könntest du schnell nachprüfen was rauskommt um zu merken dass dein Buch da Mist erzählt.

    EDIT3:

    #include <iostream>
    #include <limits> // not needed here
    
    using namespace std; // sonst müsste ich unten noch mehr anstreichen.
    
    Int main(void) { //Int muss klein. void kann (IMHO muss) weg
    Int i=1; // muss klein
    Cout<< i-- <<'\n'; // cout muss klein. i = 1
    Cout<<++i <<'\n'; // cout muss klein. i = 1
    Cout<<i++ <<'\n'; // cout muss klein. i = 1
    Cout<<++i <<'\n'; // cout muss klein. i = 3
    Return 0; // return muss klein
    }
    


  • Grundkurs c++ geschrieben von Jürgen wolf



  • pasi94 schrieb:

    geschrieben von Jürgen wolf

    Problem gefunden.
    https://www.c-plusplus.net/forum/272350-full

    EDIT: Auch wenn es hart klingt, aber seine Bücher taugen nur zum Feuer entfachen. Ich habe hier ein Exemplar stehen und spreche damit nicht anderen nach, sondern weiß wovon ich rede.



  • Okay alles klar


  • Mod

    Selbst Jürgen Wolf schreibt "int" klein. Dass er Probleme mit den Pre- und Postfixoperatoren hat (oder damit, diese richtig zu erklären), ist hingegen nicht überraschend.



  • Eine frage noch kann mir jemand erklären
    Wie man auf die werte kommt



  • Es wird wohl kaum in dem Buch verwendet werden ohne zu erklären, was es macht.


  • Mod

    pasi94 schrieb:

    Eine frage noch kann mir jemand erklären
    Wie man auf die werte kommt

    Kommt drauf an, was du genau meinst. Wie man auf die Werte in deinem Eingangsbeitrag kommt? Möglichkeiten dafür wären: Raten; Kaffeesatzlesen; Ouija; und viele mehr. Denn die Werte sind schlicht falsch.

    Wie man auf die richtigen Werte kommt:
    1. Verstehen, was die Funktionen/Operatoren machen.
    2. Verstehen, wie ein Programm abläuft.
    3. Mit dem Wissen aus 1. und 2. das Programm im Kopf oder auf Papier nachvollziehen.



  • Evtl. sind das keine Vorzeichen in den Kommentaren.



  • pasi94 schrieb:

    Eine frage noch kann mir jemand erklären
    Wie man auf die werte kommt

    In der 5. Antwort hat @script das doch wunderbar erklärt.



  • hier: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/006_c_operatoren_004.htm#mj834ebe4a788b1b21b65b17dfc06a0e90

    Da schriebt der gute Jürgen: "Die Postfix-Schreibweise erhöht bzw. verringert den Wert von var, gibt aber noch den alten Wert an den aktuellen Ausdruck weiter"

    PS: Kann keine Qoute etc verwenden weil kein JS 😕


  • Mod

    lol J.W. _D schrieb:

    PS: Kann keine Qoute etc verwenden weil kein JS 😕

    Du kannst Tags auch manuell tippen.


Log in to reply