Programm soll Zahl erraten
-
-
Bei mir funktionierts:
$ g++ -o game game.cpp$ ./game Denken Sie sich eine Zahl zwischen 0 und 20 aus Ist es die 10 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 10 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 15 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 15 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 17 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 17 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 18 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 18 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 19 ? (Ja = 1 ; Nein = 0) 1 Ihre ausgedachte Zahl ist die 19
-
ZB zahl 16 denk ich mir aus!
10?
nein--> 0
größer --> 2
15?
nein--> 0
größer --> 2
17?
nein--> 0
kleiner --> 1
8? <-- Ich weiß wieso er mich dann nach der 8 fragt aber mir fällt nicht ein wie ich auf die richtige lösung kommen soll
fehler muss bei case 1 UND 2 liegen in der matheformel
-
Hier funktionierts auch, bis auf dass sich mein Compiler über "using namespace std;" beschwert.
-
Nanyuki schrieb:
Hier funktionierts auch, bis auf dass sich mein Compiler über "using namespace std;" beschwert.
Was ist das denn für ein Ding?
-
Zahlen wie zb 16! gehen net

-
darthdespotism schrieb:
Was ist das denn für ein Ding?Es nennt sich C++Builder 1.
sasdgsdg schrieb:
Zahlen wie zb 16! gehen net

Probier mal in beiden Fällen
tip = ((max-min)/2)+min;zu schreiben.
-
funktioniert
danke Poste nachher nochmal die Final Version 
-
sasdgsdg schrieb:
Zahlen wie zb 16! gehen net

Ohne die Anpassung:
$ ./game Denken Sie sich eine Zahl zwischen 0 und 20 aus Ist es die 10 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 10 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 15 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 15 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 17 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 17 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 1 Ist es die 8 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 8 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 12 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 12 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 14 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 14 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 15 ? (Ja = 1 ; Nein = 0) 0 Ist die ausgedachte Zahl kleiner oder groesser als 15 ? Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 2 Ist es die 16 ? (Ja = 1 ; Nein = 0) 1 Ihre ausgedachte Zahl ist die 16
-
So gehts jetzt!
#include <iostream> using namespace std; int main(){ int min=0,max=20,tip=(max-min)/2; int frage1,frage2,frage3,wahl,fall=0; cout<<"#########################################################"<<endl; cout<<"# Denken Sie sich bitte eine Zahl zwischen 0 und 20 aus #"<<endl; cout<<"#########################################################"<<endl; cout<<"\nIst es die "<<tip<<" ? (Ja = 1 ; Nein = 0) "; cin>>frage1; if(frage1==1){cout<<"\nDie ausgedachte Zahl lautet: "<<tip<<"\n"<<endl;} else{cout<<"Ist es die "<<min<<" ? (Ja = 1 ; Nein = 0) "; cin>>frage2; if(frage2==1){cout<<"\nDie ausgedachte Zahl lautet: "<<min<<"\n"<<endl;} else{cout<<"Ist es die "<<max<<" ? (Ja = 1 ; Nein = 0) "; cin>>frage3; if(frage3==1){cout<<"\nDie ausgedachte Zahl lautet: "<<max<<"\n"<<endl;} else{ //Anfang while while(fall==0){ cout<<"\nIst die ausgedachte Zahl kleiner oder groesser als "<<tip<<" ?\n"<<endl; cout<<"Wenn die Zahl kleiner ist, druecken sie die 1; ansonsten die 2 "; cin>>wahl; switch (wahl){ case 1: max=tip; tip = ((max-min)/2)+min; cout<<"\n##### Ist es die "<<tip<<" ? (Ja = 1 ; Nein = 0) #####"; cin>>fall; break; case 2: min=tip; tip = ((max-min)/2)+min; cout<<"\n##### Ist es die "<<tip<<" ? (Ja = 1 ; Nein = 0) #####"; cin>>fall; break; default: cout<<"\nBitte halten Sie sich an die Anweisungen!"<<endl; } } //Ende while cout<<"\n##### Ihre ausgedachte Zahl ist die "<<tip<<" #####"<<endl; } } } return 0; }