Ein mal Eins



  • Hi,

    also ich habe das jetzt so gemacht:

    /*##############################################################################
    Ein mal Eins
    ##############################################################################*/
    #include <iostream.h>
    #include <conio.h>
    int main()
    {
            char DeinErgebnis[50];
            cout << " 1 x 1 = ";
            cout << '\n';
            cout << " Bitte gibt dein Ergebnis ein: ";
            cin  >> DeinErgebnis;
            cout << " Das richtige Ergebnis lautet: ";
            cout << 1 * 1;
            getch();
            return 0;
    }
    

    Das funtzt auch zum teil, doch wie gehe ich nun zu nächsten Aufgaben.

    Weil so bendet er ja die Eingabeauforderung.



  • /*##############################################################################
    Ein mal Eins
    ##############################################################################*/
    
    //Deine Header sind veraltet (und conio.h ist plattformabhängig), jetzt befindet sich alles im namespace std
    #include <iostream>
    
    using namespace std;
    
    int main() {
      //char DeinErgebnis[50];  Das ist auch shit, in C++ gibt's std::string, aber abgesehen davon willst du ein int einlesen!!!
      int DeinErgebnis(0);
      do {
        cout << " \n1 x 1 = ";
             << "\nBitte gib dein Ergebnis ein: ";
    
        //cin  >> DeinErgebnis;  Strings liest man nicht mit cin ein, sondern mit getline(cin, str), aber wie gesagt, du brauchst int
    
        cin>>DeinErgebnis;
    
        if (DeinErgebnis==1)  //Weil's so lustig ist
          cout << " Das richtige Ergebnis lautet: "<<1;  /*hust, was soll das eigentlich???*/
        else
          cout << " Oje, back to school";
      } while(DeinErgebnis!=0);
    
      //getch(); Schlecht, da plattformabhängig
      cin.get();
      return 0;
    };
    

    Jetzt bricht er bei der Eingabe von 0 ab.



  • #include <iostream>
    using namespace std;
    
    int main()
    {
    	char weiter = 'j';
    
    	while(tolower(weiter) == 'j')
    	{
    		//gehe zur nächsten Aufgabe
    		//mache Aufgabe
    		cout << "Weiter?" << endl;
    		cin >> weiter;
    	}
    
    	cin.get();
    }
    


  • Da ich erst mit dem lernen angefangen habe, und in meinem SGD Kurs Lernheften steht die Header so nun mal drin, darum habe ich sie benutzt. ich wusste nicht das man es auch so schreiben kann.

    char DeinErgebnis habe ich von einer Anwendung zu vor übernommen, in der man nach dem Namen gefragt wurde.

    Zumal ich so wie ich es in meinem Quelltext stehen habe, ja auch zum Ziel kam. Nur halt schloss er das Program am Ende. Ich aber wollte ja das er gleich zu nächsten Aufgabe geht. Das mit dem "Das richtige Ergebnis soll ja nur ein Hinweis sein.

    Habe den Quelltext von dir aber auch mal abgetippt und bei else weiß er nicht was das soll:

    [C++ Fehler] Unit1.cpp(15): E2054 else an ungültiger Position

    [C++ Fehler] Unit1.cpp(17): E2377 In Do-while-Anweisung fehlt )



  • bassdrum24 schrieb:

    Da ich erst mit dem lernen angefangen habe, und in meinem SGD Kurs Lernheften steht die Header so nun mal drin, darum habe ich sie benutzt. ich wusste nicht das man es auch so schreiben kann.

    OT: Was man immer so über Lernunterlagen liest, mensch mensch... Weise Deinen Lehrer/Dozent/Prof mal freundlich darauf hin dass <iostream.h> seit Jahren (seit 1998 oder so?!) veraltet ist 😃



  • bassdrum24 schrieb:

    Da ich erst mit dem lernen angefangen habe, und in meinem SGD Kurs Lernheften steht die Header so nun mal drin, darum habe ich sie benutzt. ich wusste nicht das man es auch so schreiben kann.

    Klar, aber besser du lernst es richtig, sich veraltete Sachen anzueignen bringt später nur Probleme.

    char DeinErgebnis habe ich von einer Anwendung zu vor übernommen, in der man nach dem Namen gefragt wurde.
    Zumal ich so wie ich es in meinem Quelltext stehen habe, ja auch zum Ziel kam. Nur halt schloss er das Program am Ende. Ich aber wollte ja das er gleich zu nächsten Aufgabe geht. Das mit dem "Das richtige Ergebnis soll ja nur ein Hinweis sein.

    Du kamst zwar zum Ziel, hast aber einen eher suboptimalen Weg gewählt.

    Habe den Quelltext von dir aber auch mal abgetippt und bei else weiß er nicht was das soll:

    [C++ Fehler] Unit1.cpp(15): E2054 else an ungültiger Position

    [C++ Fehler] Unit1.cpp(17): E2377 In Do-while-Anweisung fehlt )

    Whoop, sorry. Hab nen kleinen Fehler eingebaut, aber immer wieder nett wo der MSVC die Fehler sieht 😉

    //cout << " \n1 x 1 = ";  //Hier, mach das Semikolon raus
    //         << "\nBitte gib dein Ergebnis ein: ";
    
    //So muss es aussehen:
    cout << " \n1 x 1 = "
         << "\nBitte gib dein Ergebnis ein: ";
    


  • so geht es nicht.

    nur mit ; geht es!



  • bassdrum24 schrieb:

    so geht es nicht.

    nur mit ; geht es!

    ?????

    Das frisst der g++ problemlos:

    #include <iostream>
    
    using namespace std;
    
    int main() {
      int DeinErgebnis(0);
      do {
        cout << " \n1 x 1 = "
             << "\nBitte gib dein Ergebnis ein: ";
    
        cin>>DeinErgebnis;
    
        if (DeinErgebnis==1)  //Weil's so lustig ist
          cout << " Das richtige Ergebnis lautet: "<<1;  /*hust, was soll das eigentlich???*/
        else
          cout << " Oje, back to school";
      } while(DeinErgebnis!=0);
    
      cin.get();
      return 0;
    };
    


  • Und meiner Meinung nach fragt der jetzt immer 1x1 ich meine nach einer weile weiß man das doch! Willst du das dann auch irgendwann 2x2 3x3 etc. kommt?



  • Sascha081088 schrieb:

    Und meiner Meinung nach fragt der jetzt immer 1x1 ich meine nach einer weile weiß man das doch! Willst du das dann auch irgendwann 2x2 3x3 etc. kommt?

    Stimmt, aber es ging ja auch nur darum, wie man ihn das wiederholen lässt, nicht was er immer macht.
    Zugegebenermaßen, der durchschnittlich begabte Holzkopf wird spätestens beim 4. mal draufkommen, das die Lösung beim nächsten mal 1 sein könnte 😉



  • Nagut dann akzeptier ich das mal! 1x1=1 seit wann das den???^^


Anmelden zum Antworten