C :: Aufgabe #14 :: Lösung #3
3 Lösungen

#14
Zahlen erraten lassen.
Anfänger - C
von zayc_
- 28.12.2012 um 14:08 Uhr
Programmiere ein Programm, welches eine vom User erdachte Zahl (Integer) in einem vom User angegebenen Bereich Erraten soll.
Konsolenausgabe:
Bitte Untergränze angeben: 0
Bitte Obergränze angeben: 100
Bitte geben sie nach jedem versuch R,G oder K an. je nachdem ob
R die Zahl richtig ist
G die gesuchte Zahl grösser ist
K die gesuchte Zahl kleiner ist
1. Versuch: 50.
k
2. Versuch: 25
g
3. Versuch: 37
g
4. versuch: 42
g
5. Versuch: 46
k
6. Versuch: 44
k
7. Versuch: 43
r
Die gesuchte Zahl war also die 43!
#3

von psych0dad (260 Punkte)
- 17.11.2020 um 20:07 Uhr

/**************************************************************************** * * * Linux GCC * * Programmiere ein Programm, welches eine vom User erdachte Zahl (Integer) * * in einem vom User angegebenen Bereich Erraten soll. * * * ****************************************************************************/ #include <stdio.h> #include <stdlib.h> /***** FEhler eingabe funktion *****/ void fehler(void){ printf("Eingabefehler!!! Versuchen sie es noch ein mal.\n"); } int main(void){ int oberg, unterg, check1, check2, wieder=0; char antwort; do{ /****** Eingabe der Ober/Untergrenze *****/ do{ printf("Bitte Untergrenze eingeben: "); do{ check1=scanf("%d", &unterg); if(check1!=1){ fehler(); printf("Bitte Untergrenze eingeben: "); } } while(getchar()!='\n'); printf("Bitte Obergrenze eingeben: "); do{ check2=scanf("%d", &oberg); if(check2!=1){ fehler(); printf("Bitte Obergrenze eingeben: "); } } while(getchar()!='\n'); if(unterg>=oberg){ fehler(); printf("\n"); } } while(unterg>=oberg); /***** Ausdruck, Spielanleitung *****/ printf("\n\nBitte geben sie nach jedem Versuch R, G oder K. Je nachdem ob\n"); printf("R die Zahl richtig ist\n"); printf("G die Zahl Groesser ist\n"); printf("K die Zahl Kleiner ist\n\n"); int versuch=0, zahl=0, gewonnen=0; do{ ++versuch; zahl=(unterg+oberg)/2; printf("%d. Versuch: %d\n", versuch, zahl); scanf("%c%*c", &antwort); switch(antwort){ case 'G': case 'g': unterg=zahl; break; case 'K': case 'k': oberg=zahl; break; case 'J': case 'j': printf("Erraten\n"); gewonnen=1; break; default: printf("Bitte verwenden sie nur die Buchstaben R, G und J\n"); versuch--; } } while(gewonnen==0); printf("Diene Nummer lautet: %d\n", zahl); printf("Wollen sie noch ein Spiel? J(a)/N(ein): "); scanf("%c%*c", &antwort); if(antwort=='j'){ wieder=1; printf("\n\n---NUE GAME---\n\n"); } else if(antwort=='J'){ wieder=1; printf("\n\n---NUE GAME---\n\n"); } else wieder=0; } while(wieder==1); printf("\n\n---GAME OVER---\n\n"); return EXIT_SUCCESS; }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1