Problem mit einfachem Programm



  • Hallo,

    ich möchte ein Programm schreiben, dass abfrägt an welche Zahl man gerade denkt.
    Man hat drei Versuche und wenn man die richtige Zahl errät, in diesem Fall die 4, gibt das Programm die Meldung richig aus und wird beendet, ansonsten gibt es die Meldung "falsch" raus. Leider funktioniert das bei mir nicht, denn wenn ich die richtige Antwort gebe, macht das Programm einfach weiter. Hat jemand eine Idee? 😮

    Hier ist mein Quelltext:

    int a;
    int b=0;

    do
    {
    b ++;
    if (b>=3 && a!=4)
    {printf ("Das war dein %d.Versuch.\n"
    "Du hast nur noch einen Versuch\n\n",b-1);}
    printf ("%d.Versuch: ",b);
    printf ("An welche Zahl denke ich gerade? ");
    scanf ("%d",&a);
    printf ("\n\n");
    if (a!= 4 && a!=0)
    {printf ("Falsch\n\n");}
    else if (a = 4 && a!=0)
    {printf ("Richtig\n\n");}}
    while (a != 0 && a!=4 && b<3);

    printf ("Das Programm wird beendet\n\n");

    system ("pause");



  • Code-Tags verwenden weil sonst unleserlich, a und b sind keine brauchbaren Variablennamen, in C++ wird statt printf und scanf cout und cin verwendet und der Vergleichsoperator ist == (nicht =).



  • Ja sorry, stimmt, das Programm ist natürlich nicht in c++ geschrieben sondern in c. Andere Frage.... wie verwende ich denn code tags? In meinem Editor find ich die nicht!



  • [ cpp ] [ /cpp ]- Tags befinden sich direkt unter dem Textfeld - beschriftet mit C/C++

    if (a!= 4 && a!=0)
    {printf ("Falsch\n\n");}
    else if (a = 4 && a!=0) // Hier ist der Fehler, gemeint ist a == 4
    {printf ("Richtig\n\n");}}
    


  • Fǘr C gibt's übrigens ein eigenes Subforum:
    http://www.c-plusplus.net/forum/viewforum-var-f-is-10.html



  • leider nicht... wenn ich a == 4 statt a = 4 schreibe habe ich noch immer das selbe Problem....

    Und in meinem Editor (Dev-C++) finde ich

    oder
    

    nicht. Vielleicht gibts nen besseren Editor?



  • Die

    Tags befinden sich auf der C++-Forum Seite....
    Wenn du Code postest, dass schreibst du [cpp ] dein code [/cpp ] (ohne die Leerzeichen hinter den Eckigen Klammern..
    
    Dann schaut dein Posting so aus:
    [cpp]
    
    int a;
    int b=0;
    
    do
    {
      b++;
      if (b>=3 && a!=4)
      {
        printf ("Das war dein %d.Versuch.\nDu hast nur noch einen Versuch\n\n",b-1);
      }
      printf ("%d.Versuch: ",b);
      printf ("An welche Zahl denke ich gerade? ");
      scanf ("%d",&a);
      printf ("\n\n");
      if (a!= 4 && a!=0)
      {
        printf ("Falsch\n\n");
      }
      else if (a = 4 && a!=0)
      {
        printf ("Richtig\n\n");
      }
    }while (a != 0 && a!=4 && b<3);
    
    printf ("Das Programm wird beendet\n\n");
    
    system ("pause");
    


  • mock789 schrieb:

    leider nicht... wenn ich a == 4 statt a = 4 schreibe habe ich noch immer das selbe Problem....

    Musst halt auch neukompilieren...

    Und in meinem Editor (Dev-C++) finde ich

    oder
    

    nicht.

    Was findest du nicht?

    Vielleicht gibts nen besseren Editor?

    Durchaus, z.B. Code::Blocks.


Log in to reply