C++ Programm Problem /Frage



  • Danke für die schnelle Antwort.
    Entweder versteh ich das nicht oder ich habe es zu schlecht erklärt.
    Wegen der Übersichtlichkeit hier nen kurzes Beispiel meines Problems.
    Mfg
    Kevin

    /* Im ganzen Programm ist es vieleicht bissle schwer zu verstehen
    	 Hier ein Beispiel des Problems
    	 Mit hilfe von cout kann ich Donald Duck ja ganz einfach darstellen.
    	 Jetzt will ich aber "cin" verwenden. Kann man bei "cin" nur Zahlen eingeben nach dem Debug oder kann ich es auch mit einem Wort ?
    	 Ich meine das so wenn ich halt "name" eingabe soll er mir Donald Duck ausgeben ? Geht das ?
    	 Mit einem int kann ich es ja ausgeben indem ich irgent eine Zahl verwende. Wie mache ich das allerdings bei einem Wort.
    
    	*/
    
    	string name ;
    
    	name = "Donald Duck";
    
    	cin >> name ;          // Ist das so möglich ?
    
    	getchar ();
    

  • Mod

    Ich verstehe immer noch nicht was du willst. Gib mal einen beispielhaften Programmablauf an, ganz ohne Code. Zum Beispiel nach diesem Muster:

    [b]E:[/b] Was ist 1+1?
    [b]A:[/b] 2
    

    E: Benutzereingabe, A: Programmausgabe



  • Also vorab rate ich dir ein gutes Buch über C++ zu besorgen.

    #include <iostream>
    #include <string>
    
    int main()
    {
       std::string Input;
    
       std::cin >> Input;          //Deine Eingabe wurde nun in der Variable Input abgespeichert
    
       if(Input.compare("Donald")==0)
          std::cout << "Hallo, Donald!\n";
       else
          std::cout << "Sorry, aber du bist mir nicht bekannt!\n";
    }
    

    Ich denke du solltest dir noch mal anschauen was std::cin macht, da es den Anschein hat als hättest du nicht verstanden was es macht.



  • SeppJ schrieb:

    Ich verstehe immer noch nicht was du willst. Gib mal einen beispielhaften Programmablauf an, ganz ohne Code. Zum Beispiel nach diesem Muster:

    [b]E:[/b] Was ist 1+1?
    [b]A:[/b] 2
    

    E: Benutzereingabe, A: Programmausgabe

    Ich glaube er denkt das

    cin >> Donald;
    

    das wiedergibt was er vorher in den std::string rein geschrieben hat.

    Sprich:

    std::string Donald("Donald, Duck");
    std::cin >> Donald;
    

    schreibt "Donald, Duck" in die Konsole ...



  • if (name >= 4)
    ist wahr wenn name 4, 5 oder irgendetwas groesser als drei ist...
    wenn als Ergebnis des Vergleichs TRUE, wahr, 1 oder irgendetwas was nicht 0 ist
    herauskommt wird das was nach if kommt ausgeführt...

    wenn das Stünde:
    while( name >= 4)
    dann wird das so lange ausgeführt bis name kleiner 4 ist, also 3, 2, 0 FALSE oder -1...

    In C oder C++ wird das was nach der Bedingung kommt so lange ausgeführt bis die Bedingung Bedingung falsch ist, d.h. das Ergebnis des Vergleich false oder 0 ergibt und wenn du eine zahl die größer oder gleich 4 ist, dann ist das ergebnis true (1) deshalb ist die Abfrage falsch definiert, denke ich ich würde nehmen:
    if( name < 4) {
    ...
    }
    dann ist jede eingabe für name die kleiner als 4 ist wahr, also true...
    und wenn ich deiner Idee folge, kommt dann eine Ausgabe...



  • Danke für die Antwort
    Ich glaube ich habe eher nicht verstanden was cin macht ^^
    Da ich mir das alles selber bei bringe und ich das neben bei mache, ist das nicht so ganz leicht. Ich werde mir mal ein Buch über C++ kaufen. Habe bis jetzt nur ein Pdf buch was eigentlich nicht so schlecht ist aber was hardware in der hand zu haben ist immer besser ;).

    Danke für die tips

    Könnt ihr ein Buch empfehlen.
    mfg
    Kevin


  • Mod

    oaquao schrieb:

    Könnt ihr ein Buch empfehlen.

    Nimm bloß nichts von Jürgen Wolf, das wäre schon einmal ein guter Anfang.

    Wie sieht's mit deinem Englisch aus? Die meiste gut Literatur die ich kenne ist auf Deutsch nicht erhältlich. Wobei du Englisch ohnehin sehr bald lernen müsstest (falls du es noch nicht kannst), wenn du wirklich programmieren willst.



  • Also solange ich keine Grammatik brauche kann ich englisch eigentlich ganz gut 😉
    Also nen englisches buch verstehe ich schon.
    Kannste mir eins empfehlen ?


  • Mod

    Gut ist zum Beispiel "Thinking in C++". Das besonders tolle: Es ist gratis als Ebook verfügbar:
    http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html

    Auch gut sein soll der "C++ Primer" wenn du den irgendwo besorgen kannst.

    Und irgendwie habe ich den Eindruck, dass ich andauernd diesen Beitrag wieder schreibe, dewegen fasse ich mich heute einmal kurz und verweise auf meinen Beitrag von gestern:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-275290-and-start-is-10.html



  • Danke für die tipps
    Dann werde ich mal los lesen und üben üben üben 😉



  • cin ist ein eingabestream, d.h. ein Objekt das mit der Standarteingabe verbunden ist, also stdin wenn du Unix nutzt für windowsnutzer die Tastatur :).
    get() ist eine Methode (Funktion) dieser Klasse...
    verrat mir einfach wo du hängst, ich rate nur hier rum was, bzw. wo dein Problem liegt???
    mfg KS



  • Ich möchte eine eingabe machen und dann soll ein text ausgegeben werden:

    Also z.b.

    Will ich im consolenfenster einen Namen eingeben.
    In der console könnte z.b. stehe

    Gib deinen Vornamen ein:
    Wenn ich dann z.b. Kevin eingeben soll er mir dann was ausgeben wie bei der cin funktion.

    Ausgabe z.b.

    Hallo Kevin, wie geht es Ihnen heute ?

    kannst du da was mit anfangen @ thepower `?



  • std::string name;
    std::cout<<"Name eingeben: ";
    std::cin>>name;
    std::cout<<"Hallo "<<name<<", wie geht es dir heute?";
    


  • Danke
    jetzt gehts endlich

    MFg
    kevin


Anmelden zum Antworten