You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

110 lines
1.5 KiB

//1
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "Mathe.h"
//2
void initialisiereZufallsgenerator();
//3
int generiereZufallszahl(int min, int max);
//4
char generiereZufallsOperator();
//5
int addiere(int zahl1, int zahl2);
//6
int subtrahiere(int zahl1, int zahl2);
//7
int multipliziere(int zahl1, int zahl2);
//8
int dividiere(int zahl1, int zahl2);
//9
int berechneErgebnis(int zahl1, int zahl2, char operator);
//10
void spieleRunde(int schwierigkeitsgrad);
//11
void zeigeAnleitung();
//12
void zeigeHighscore(int punkte);
//13
int holeSpielerAntwort();
//14
void bewerteAntwort(int spielerAntwort, int ergebnis, int* punkte);
//15
void zeigeRundenEnde(int punkte);
//16
void zeigeAuswahl(const char* text);
//17
void initialisiereZufallsgenerator() {
srand(time(NULL));
}
//18
int generiereZufallszahl(int min, int max) {
return min + (int)((double)rand() / (RAND_MAX + 1) * (max - min + 1));
}
//19
char generiereZufallsOperator() {
char operatoren[] = {'+', '-', '*', '/'};
int index = rand() % 4;
return operatoren[index];
}
//20
int berechneErgebnis(int zahl1, int zahl2, char operator) {
switch (operator) {
case '+':
return addiere(zahl1, zahl2);
case '-':
return subtrahiere(zahl1, zahl2);
case '*':
return multipliziere(zahl1, zahl2);
case '/':
return dividiere(zahl1, zahl2);
default:
return 0;
}
}