Programm, dass Zahl errät



  • Hallo,

    ich soll ein Programm schreiben, dass eine ausgedachte Zahl zwischen 0 und 100 mit max. 10 Fragen errät. Also à la "Ist die Zahl gerade?"...

    Das müsste ich dann immer mit bool machen, also ja/nein, aber wie verknüpfe ich das Fragen untereinander?



  • versteh deine frage nicht...
    aber z.bsp. könntest du ein array (of bool) mit 100 einträgen machen - was am anfang überall mit true initialisiert wird - und jedes mal, wenn du wieder eine zahl ausschließen kannst, setzt du die position im array halt auf false...
    wenn du nur noch einmal true hast, hast du die zahl... selbstverständlich würde das auch mit einem stl-containern funktionieren, der alle zahlen speichert und die, die nicht mehr in frage kommen direkt rausschmeißt...

    was hast du denn nun bis jetzt schon?

    bb



  • Laß das Programm doch binär suchen.



  • So einen ähnlichen Thread gab es bereits:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-227681-and-highlight-is-zahl.html
    Vielleicht hilft er dir schon weiter :).



  • Ja hilft etwas. Stichwort binäre Suche:

    Ich habe dies dazu gefunden

    BINAERESUCHE(S, WERT, LINKS, REHTS)
    1 WHILE (LINKS  RECHTS) DO
    2 MITTE:= ⌊ LINKSRECHTS
    2 ⌋
    3 IF (S[MITTE] = WERT) THEN
    4 RETURN MITTE
    5 IF (S[MITTE]>WERT) THEN
    6 RECHTS:=MITTE-1
    7 IF(S[MITTE]<WERT) THEN
    8 LINKS:=MITTE+1
    9 END WHILE
    10 RETURN „WERT nicht gefunden“

    Ich habe also ein array mit 100 Einträgen. Und wie kommt dort jetzt das Frage-Antwort-Spielchen dazu? Ich muss dem Programm ja sagen, obs größer oder kleiner der MITTE ist. RETURN "WERT nicht gefunden" ist doch für meine Belange vollkommen unnötig, oder nicht? Es wird die Zahl ja auf jeden Fall finden.



  • Laß das Programm doch binär suchen.

    wollt auch grad sagen 10 fragen, für hundert möglichkeiten? mit 10 fragen, schafft man es eine zahl zwischen 0 und 1000 zu erraten.



  • Ja, in der Aufgabe steht nichts von binär.

    Davon abgesehen versuche ich es ja binär, schaffe es aber nciht.



  • Maddie schrieb:

    Davon abgesehen versuche ich es ja binär, schaffe es aber nciht.

    Was hast Du denn bisher? Ist die Theorie der Binärsuche klar? Also mit anderen Worten, wie würdest *du* es denn anstellen, wenn Du die Zahl finden solltest?


Anmelden zum Antworten