Hilfe absoluter C++ Anfänger...



  • Soll einen mini-Taschenrechner bauen wo einfach zwei zahlen nacheinander eingegeben werden und die dann addiert werden. Soll mit Klassen arbeiten.
    Habe in diesem Zusammenhang schon mal drei Dateien erstellt: main.cpp rechnen.cpp rechnen.h

    main.cpp

    #include <stdio.h>
    #include "rechnen.h"
    #include <iostream>
    
    main() {
    
    }
    

    rechnen.cpp

    #include "jonas.h"
    
    void rechnen::eingabe1(int _zahl1) {
    	zahl1 = _zahl1;
    }	
    void rechnen::eingabe2(int _zahl2) {
    	zahl2 = _zahl2;
    }
    void rechnen::berechnen() {
    	zahl1 + zahl2;	
    }
    int rechnen::ausgabe() {
    
    }
    

    rechnen.h

    class rechnen {
    
    	private:
    
    		int zahl1;
    		int zahl2;
    
    	public:
    
    		void eingabe1(int _zahl1);
    		void eingabe2(int _zahl2);
    		void berechnen();
    		int ausgabe();
    
    };
    

    komme nicht weiter bitte um hilfe...



  • Morgen,

    wieso habe ich das Gefuehl, dass uns immer mehr Leute einen Baeren aufbinden wollen?

    Naja, schau dir mal diese Zeilen nochmal genau an:

    void rechnen::berechnen() {
        zahl1 + zahl2;   
    }
    

    Versuch dir selbst zu erklaeren was hier passiert, vor allem: Was passiert mit dem
    Ergebnis?

    Zur Ausgabe: Schau dir mal an, was du mit cout anstellen kannst.

    Zur Eingabe in der main: Schau dir an, was du mit cin anstellen kannst.

    mfg
    v R

    PS: Bitte mehr Eigeninitiative!



  • Benütze bitte auch nicht stdio.h und iostream! stdio.h ist die C Standard Ein- und Ausgabe, die gleiche Aufgabe erledigt iostream für C++.



  • #include <iostream>
    using namespace std;
    
    int main()
    {
       int zahl1, zahl2, ergebniss;
    
       cout << "Gib eine Zahl ein" << endl;
       cin >> zahl1;
    
       cout << "Gib noch eine ein :)" << endl;
       cin >> zahl2;
    
       ergebniss = zahl1 + zahl2;
       cout << ergebniss;
    
       return 0;
    }
    

    einfachste lösung 😉



  • oder auf die umständlichere Art

    // header.h
    #include <iostream>
    using namespace std;
    
    class Rechner
    {
          private:
                    int m_zahl1;
                    int m_zahl2;
                    int m_result;
    
          public:
                    void Welcome();
                    void Enter();
                    void Calculate();
                    void End();
    };
    
    // rechner.cpp
    #include "header.h"
    
    void Rechner::Welcome()
    {
         cout << "Hallo" << endl;
    
         Enter();
    }
    
    void Rechner::Enter()
    {
         cout << "Geben Sie eine Zahl ein" << endl;
         cin >> m_zahl1;
    
         cout << "Geben Sie noch eine Zahl ein" << endl;
         cin >> m_zahl2;
    
         Calculate();
    }
    
    void Rechner::Calculate()
    {
         m_result = m_zahl1 + m_zahl2;
    
         End();
    }
    
    void Rechner::End()
    {
         cout << m_result;
         cout << "Goodbye!";
    }
    
    // main.cpp
    #include "header.h"
    
    int main()
    {
        Rechner Taschenrechner;
        Taschenrechner.Welcome();
    
        return 0;
    }
    


  • Morgen,

    boar Leute, ihr sollt dem OP nicht das Denken abnehmen. Was hat er nun davon?

    mfg
    v R



  • er kann sich den code anschauen und nächstes mal weiss er wie es geht 😃



  • [quote="AlexNeumann"]

    virtuell Realisticer schrieb:

    Morgen,

    wieso habe ich das Gefuehl, dass uns immer mehr Leute einen Baeren aufbinden wollen?

    Immer diese Sprüche! Halte ich nicht für angebracht. Oder denken abnehmen, was fürn Blödsinn! 🙄 . Bist du als Genie auf die Welt gekommen oder wie? Es gibt Leute die lernen schneller und andere wiederum brauchen etwas mehr Anlauf.



  • [quote="AlexNeumann"]

    AlexNeumann schrieb:

    virtuell Realisticer schrieb:

    Morgen,

    wieso habe ich das Gefuehl, dass uns immer mehr Leute einen Baeren aufbinden wollen?

    Immer diese Sprüche! Halte ich nicht für angebracht.

    Manchmal muss man den Leuten etwas auf den Schlips fuehlen. Ich sage, was ich denke
    und es ist natuerlich schlecht, wenn du oder andere damit ein Problem haben, aber
    das kann ich dann auch nicht aendern.

    Oder denken abnehmen, was fürn Blödsinn! 🙄 . Bist du als Genie auf die Welt gekommen oder wie?

    Noe, als Durchschnittsmensch.

    Es gibt Leute die lernen schneller und andere wiederum brauchen etwas mehr Anlauf.

    Ein bisschen Nachdenken haette geholfen. Das verhindert man aber, wenn man komplette
    Loesungen postet.

    Und manchmal werde ich das oben angesprochene Gefuehl nunmal nicht los. Und dann sage
    ich das den Leuten.

    mfg
    v R



  • Sorry, aber sowas

    void rechnen::berechnen() {
        zahl1 + zahl2;  
    }
    

    Hat nichts mit schnell oder langsam lernen zutun! Aus der Grundschule sollte klar sein, dass ein Ergebnis grundsätzlich vor/hinter einem Gleichheitszeichen steht.



  • AlexNeumann schrieb:

    Oder denken abnehmen, was fürn Blödsinn! 🙄.

    Ich denke nicht dass es blödsinn ist es so zu bezeichnen.
    Wenn jemand eine Frage hat , und ein anderer nicht drauf eingeht, aber ihm schnell ne fertige lösung postet, ist es nunmal so das man nicht mehr denken muss. Was aber das wirklich Schlimme daran ist, ist die Tatsache, dass der Lerneffekt bei sowas , egal wie "talentiert oder genial" man ist, gleich 0 ist!
    man lernt programmieren nun mal nicht von C&P oder abschreiben.. Und wenn der OP schon eine Frage stellt, ist es doch nur fair , ihm nicht gleich alles hinzuhauen...

    AlexNeumann schrieb:

    Bist du als Genie auf die Welt gekommen oder wie?

    Ich verstehe deinen Gedankengang nicht.



  • shapeless schrieb:

    AlexNeumann schrieb:

    Oder denken abnehmen, was fürn Blödsinn! 🙄.

    Ich denke nicht dass es blödsinn ist es so zu bezeichnen.
    Wenn jemand eine Frage hat , und ein anderer nicht drauf eingeht, aber ihm schnell ne fertige lösung postet, ist es nunmal so das man nicht mehr denken muss. Was aber das wirklich Schlimme daran ist, ist die Tatsache, dass der Lerneffekt bei sowas , egal wie "talentiert oder genial" man ist, gleich 0 ist!
    man lernt programmieren nun mal nicht von C&P oder abschreiben.. Und wenn der OP schon eine Frage stellt, ist es doch nur fair , ihm nicht gleich alles hinzuhauen...

    Nö eine Lösung muss man auch nicht posten, aber vieleicht mal vernünftig erklären. Was wiederum auch auch kein Weltuntergang ist, mal ein Lösungsvorschlag zu geben. Es gibt ja auch Bücher mit Übungen und danach werden die Lösungen vorgeschlagen und erklärt, wieso und weshalb das so ist. Da sehe ich denn Lerneffekt.

    AlexNeumann schrieb:

    Bist du als Genie auf die Welt gekommen oder wie?

    shapeless schrieb:

    Ich verstehe deinen Gedankengang nicht.

    Dann verstehst du's eben nicht.



  • ok, zu sagen : hört auf anderen das Denken abzunehmen, impliziert also das ich mich für ein Genie halte....
    Naja, so lange du es verstehst...
    Und wenn es nicht auf diese Aussage bezogen war, ist deine Anmerkungsreihenfolge etwas .... durcheinander... aber das ist mir eigentlich auch egal...

    Naja zum Lerneffekt: klar ist das in vielen Büchern so, und vor allem kein unsinniges Prinzip, aber wenn man nach Hilfe sucht und eine Lösung bekommt, ist es nunmal nicht dass was man will, braucht; folglich ist der Lerneffekt viel geringer...


Anmelden zum Antworten