C :: Aufgabe #239

1 Lösung Lösung öffentlich

Glücksspiel Zufällige Zahl 0-9

Fortgeschrittener - C von re_mas - 27.11.2019 um 18:30 Uhr
Die Aufgabenstellung ist wie folgt:
- Glücksspiel bei der eine random Zahl zwischen 0 - 9 erzeugt werden soll.
- Der Spieler hat ein Startkonto von 10.000 Punkten und kann damit einen beliebigen Teilbetrag auf die zufällig erzeugte Zahl setzen.
- Liegt er richtig bekommt er das 9 Fache seines Einsatzes als Gewinn
- Programmieren Sie ein entsprechendes Programm, welches die Eingaben von der Tastatur einliest und
die Ausgaben auf dem Bildschirm liefert. Die zu erratende Zahl kann durch einen verfügbaren Zufallsgenerator gezogen werden.

Lösungen:

vote_ok
von kamikatze (420 Punkte) - 17.02.2020 um 11:13 Uhr
Quellcode ausblenden C-Code
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>


int konto = 10000;
int einsatz;
bool check = false;
int wett_zahl;


// erzeugen zufallszahl 1-8
int zzahl(){
	int zahl = 0;
	while( zahl == 0){
		zahl = rand() % 9;
	}
	return zahl;
}


int main(){
	while(1){
		// nutzereingaben
		while(check == false){                                              
			printf("dein einsatz: ");
			scanf("%u", &einsatz);
			printf("deine zahl (1-8): ");
			scanf("%u", &wett_zahl);
		
			// prüfugn auf z-zahl in zulässigen bereich
			if(wett_zahl > 8 || wett_zahl < 1){                   					
				printf("falsche eingabe\n");
				check = false;
			} else {
				check = true;
			}
			
			// prüfung auf einsatzhöhe
			if(einsatz > konto){											
				printf("dein einsatz von %u ist zu hoch\n", einsatz);
				check = false;
			} else {
				check = true;
			}
		}
		// spieldurchlauf
		int ziehung = zzahl();
		if(wett_zahl == ziehung){
			konto += (einsatz * 9);
			printf("du hast gewonnen. dein neuer kontostand: %u\n", konto);
			check = false;
		} else {
			konto -= einsatz;
			printf("du hast verloren, die gesuchte zahl war %u. dein neuer kontostand: %u\n", ziehung, konto);
			check = false;
		}
		// konto leer == ende
		if(konto == 0){
		    printf("du bist pleite, tschö");
		    return 0;
		}	
	}
}