programm soll ausgedachte zahl erraten
-
natürlich befasse ich mich mit dem problem
warum sollte ich euch ärgern?!?!?!
also ich habs nach dem ich mir dein comment nochma durchgelesen nochmal probiertint antwort, zahl; int x=50; while (x<=100){ int y=100; while (y>0){ zahl=(y+x)/2; ; std::cout<<"Ist ihre Zahl kleiner als" << zahl << "(1/0): "<< std::endl; std::cin>> antwort; if (antwort==1) { y/=2;} if (antwort==0) { } }} }ich weiß nicht was ich bei antwort 0 machen soll????
-
x=0 natürlich
-
c++meganoob schrieb:
natürlich befasse ich mich mit dem problem
warum sollte ich euch ärgern?!?!?!Deine drei Smileys ohne jegliche Beschreibung weisen darauf hin.
c++meganoob schrieb:
x=0 natürlich
Du kannst Beiträge auch nachträglich editieren.

Aber okay, ich helf dir mal ein bisschen auf die Sprünge.
int UpperBound = 100; // obere Grenze (am Anfang 100) int LowerBound = 0; // untere Grenze while (...) // solange der eingegrenzte Bereich gross genug ist { ... // hier Zahl abfragen, Bereich auswählen ... // hier eine der Grenzen neu setzen, um Bereich weiter einzuschränken }
-
die sollten nur meine verzweiflung zum ausdruck bringen....
-
was meinst du mit:
// solange der eingegrenzte Bereich gross genug ist????
-
Na, ich denke, du willst die Zahl doch folgendermassen erraten:
Am Anfang hast du den Bereich ]0,100] (alle Ganzzahlen zwischen 0 und 100; 0 ausgeschlossen, 100 eingeschlossen). Es wird gefragt, ob die Zahl grösser ist als 50. Wenn ja, liegt sie im Bereich ]50,100]. Wenn nein, in ]0,50]. Dann wird wieder gefragt und der Bereich erneut auf die Hälfte eingeschränkt.
-
okay habs einigermaßen hingekriegt
nun wie mach ich die ausgabe also praktisch: die gesuchte zahl ist: etc.wo mach ich das hin nach der schleife ist klar aber wie sag ich es dem programm das es die richtige zahlt ist
-
Habe jetzt den ganzen Thread durch. Warum sagt dem armen Tropf niemand, daß es sich um eine binäre Suche handelt. Gibts in jedem guten Fachbuch...
(Obere Grenze - untere Grenze) / 2 = Abfragewert.
Danach Auswertung ob größer, kleiner oder gleich.
Größer oder kleiner, entsprechende Grenze setzen...siehe oben
-
(ich hab jetzt obere grenze+untere grenze)/2
irgendwie läufts für meine bedürfnisse reicht es erstma^^
danke trotzdem an alle
-
c++meganoob, du solltest unbedingt die grundlegendsten Grundlagen (Variablen, If-Abfragen, Schleifen, Funktionen, Konsolenein- und -ausgaben) noch genauer anschauen.
x schrieb:
Warum sagt dem armen Tropf niemand, daß es sich um eine binäre Suche handelt.
So, wie er sich angestellt hat, hätte ihm das wahrscheinlich nicht viel gebracht.