C++ devc++



  • Was ist denn dieses code Blocks ? Bin leider noch anfänger daher meine frage.

    Achso und zu meinem Programmcode :

    #include <cstdlib>
    #include <iostream>

    using namespace std;

    int main()
    {

    int a = 5;
    int z = 100;
    bool ergebnis;
    cin >> a >> z;
    ergebnis = a != z;

    return 0;

    }

    Habs jetzt ein wenig geändert wollte versuchen das durch eingabe zu testen.
    Aber wenn ich was eingebe passiert leider nichts . Was stimmt mit meinem code nicht?

    Tut mir leid das ich euch wieder störe bin noch nicht ganz fit beim programieren.
    Ist nicht gerade einfach.
    Habt uhr euch das alle selber beigebracht?



  • Mit cin >> ... lässt du was eingeben.
    Dann berechnest du dein Ergebnis.

    Dann kommen ein paar Leerzeilen.

    Dann ein return 0;
    Dann ne geschweifte Klammer.
    Hmm...
    Ne, das wars.
    Irgendwas fehlt, oder?
    Und codeblocks ist sowas wie devc++, nur besser.



  • Bzgl. Code Blocks helfen Google und Wikipedia. Und bitte beherzige die Rückmeldung an Deine Beiträge, etwa das Codetag zu benutzen.

    Bei der Eingabe solltest Du die Werte bitte mit Leerzeichen getrennt voneinander eingeben.

    Am Besten lernst Du am Anfang durch ein gutes Buch. Es gibt Online-Tutorials, die aber eben kein Buch ersetzen. Wie die Guten hier gut wurden, weiß ich nicht, aber mit einem Buch hat die überwiegende Mehrheit hier angefangen.



  • Ich empfehle dir, bei Sachen wie ergebnis = a != z; explizit Klammern zu setzen. Das wird dir später beim Verstehen deines eigenen Programms helfen. (Wenn du weißt, was die Zeile macht, dann weißt du auch, wo die Klammern hingehören.)

    programmer21 schrieb:

    Habt uhr euch das alle selber beigebracht?

    Ist unterschiedlich. Manche sind Autodidakten, manche haben Informatik o.Ä. studiert. Falls du zur ersten Gruppe gehörst, fang bitte mit einem guten Buch an. Im Forum findest du die Buchempfehlungen (oder schau auf SeppJ's Signatur, wenn du mal seinen Beitrag irgendwo siehst).

    Zu deinem Problem: es passiert nichts, weil du vllt. in der Konsole nichts ausgibst. std::cout << ergebnis; und wait(); wären ein guter Anfang. #include <cstdlib> brauchst du übrigens in deinem letzten Code nicht.



  • [cpp]#include <cstdlib>
    #include <iostream>

    using namespace std;

    int main()
    {

    int a = 5;
    int z = 100;
    bool ergebnis;
    cin >> a >> z;
    ergebnis = a != z;

    char dummy;
    cin>> dummy;

    cout << " a nicht gleich z " ;

    getchar();

    return 0;

    }

    Ich habs jetzt so gemacht , weiss nicht ob es so in ordung ist.

    Aber eins muss ich sagen das code blocks ist wirklich angenehmer zu benutzen.

    Danke für euren tipp.

    Was muss man eigentlich jetzt beachten wenn ich strings vergleichen will leute?



  • programmer21 schrieb:

    Was muss man eigentlich jetzt beachten wenn ich strings vergleichen will leute?

    Kommt darauf an was für Strings.



  • Das muss ich ja machen:

    - 2 Strings und das Ergebnis des „>Vergleichs“
    Achten Sie auf eine gefällige Ausgabe am Bildschirm und erstellen Sie wieder zusätzlich einen
    Testplan.

    Hast du paar tips für mich?



  • Wenn die Strings vom Typ std::string sind, einfach mit == Vergleichen.



  • Hallo leute mein programmcode sieht so aus :

    [cpp ] code [/cpp ]#include < iostream >
    #include <string>
    using namespace std;

    int main() {

    string x = 8000000;

    string z = 1000000;

    boole ergebnis x == z ;

    cin>> x >> z;

    if( x > z ) {
    cout << " String" << x << " ist groesser als String" << z;

    cout << " Bye " ;

    return 0;

    }

    }

    Aber es wird gar nicht ausgeführt . Vergleiche ich die strings falsch oder was ist los?



  • Ich versuchs mal richtig darzustellen:

    Hallo leute mein programmcode sieht so aus :

    [cpp ] #include < iostream > [/cpp ]).
    #include <string>
    using namespace std;

    int main() {

    string x = 8000000;

    string z = 1000000;

    boole ergebnis x == z ;

    cin>> x >> z;

    if( x > z ) {
    cout << " String" << x << " ist groesser als String" << z;

    cout << " Bye " ;

    return 0;

    }

    }

    Aber es wird gar nicht ausgeführt . Vergleiche ich die strings falsch oder was ist los?



  • Bedienungsanleitung für C++-Tags:
    1. Text markieren
    2. auf [C/C++]-Button klicken

    Wenn du das jetzt immer noch nicht hinkriegst, dann gibt's ein Facepalm von mir.



  • #include <cstdlib> 
    #include <iostream> 
    
    using namespace std; 
    
    int main() 
    { 
    
    int a = 5; 
    int z = 100; 
    bool ergebnis; 
    cin >> a >> z; 
    ergebnis = a != z; 
    
    char dummy; 
    cin>> dummy; 
    
    cout << " a nicht gleich z " ; 
    
    getchar(); 
    
    return 0; 
    
    }
    

    Kann mir jemand erklären was mit meinem code nicht stimmt?



  • Keine Ahnung warum das falsche dargestellt wurde . Jetzt stimmts:

    #include < iostream > 
    #include <string> 
    using namespace std; 
    
    int main() { 
    
    string x = 8000000; 
    
    string z = 1000000; 
    
    boole ergebnis x == z ; 
    
    cin>> x >> z; 
    
    if( x > z ) { 
    cout << " String" << x << " ist groesser als String" << z; 
    
    cout << " Bye " ; 
    
    return 0; 
    
    } 
    
    }
    

    Aber was stimmt hier nun genau nicht?



  • Schaut dir mal das Example an, wie man eine Zeichenkette erstellt: http://www.cplusplus.com/reference/string/string/append/



  • Ich hab das leider nicht so ganz verstanden. Kannst du mir nicht ein wenig genauer erklären was in meinem Code fehlt?



  • string x = 8000000;   // Deins falsch
    string x = "Writing"; // Korrektes Beispiel
    

    Come on, you can do it 👍



  • Wieso nimmst du statt einen Zahlenwert ein Wort?



  • Weil string nur für Zeichenketten gedacht ist, da kann keine Zahl rein, außer du konvertierst die halt entsprechend.



  • Weil dein Datentyp ein String, also eine Zeichenkette ist. C++ erkennt sie als solche nur mittels "". Was du geschrieben hast, ist kein String, sondern int. Dass man dir den Unterschied zwischen elementaren Datentypen erklären muss, legt die Vermutung nahe, dass du in der Vorlesung nichts gelernt hast und jetzt die Aufgabe aufn letzten Drücker machst bzw. schon fast machen lässt. Mensch, du musst doch irgendwas von deinem Dozenten haben (Skript, Folien, Bücher, ......), wo solche grundlegende Sachen drin stehen - ich verstehe das Ganze nicht.



  • programmer21 schrieb:

    Wieso nimmst du statt einen Zahlenwert ein Wort?

    Wikipedia schrieb:

    Eine Zeichenkette oder (aus dem Englischen) ein String ist in der Informatik eine Folge von Zeichen (z. B. Buchstaben, Ziffern, Sonderzeichen und Steuerzeichen) aus einem definierten Zeichensatz.
    Zeichen können sich in einer Zeichenkette wiederholen, die Reihenfolge der Zeichen ist definiert. Zeichenketten sind somit Sequenzen aus Symbolen mit endlicher Länge.
    In der Programmierung ist eine Zeichenkette ein Datentyp, der eine Kette von Zeichen mit fester oder variabler Länge enthält. Damit werden hauptsächlich Wörter, Sätze und ganze Texte gespeichert.


Anmelden zum Antworten