Mit einem Macbook Air machst du nichts falsch
Antwort
Antwort
#include <stdio.h>
#include <stdlib.h>
#define ENDE 0
#define ZERO 0
#define DIV_ZERO 0
char eingabefunktion(char eingabe);
double eingabezahlen(double eingabe);
double additionfunktion(double a,double b);
double substraktionfunktion(double a,double b);
double multiplikationfunktion(double a,double b);
double divisionfunktion(double a, double b);
double eingabedivision(double b);
int main(void){
char eingabe;
double result = 0.0;
double zahla = 0.0;
double zahlb = 0.0;
char a = "a";
char b = "b";
char c = "c";
char d = "d";
char e = "e";
for(;;){
eingabe = eingabefunktion(eingabe);
if(eingabe == a){
printf("ADDITION WURDE AUSGEWÄHLT\n");
printf("ZAHL A:\n");
zahla= eingabezahlen(zahla);
printf("ZAHL B:\n");
zahlb= eingabezahlen(zahlb);
result= additionfunktion(zahla,zahlb);
printf("%lf + %lf\n", zahla, zahlb);
}
if(eingabe == b){
printf("SUBSTRAKTION WURDE AUSGEWÄHLT\n");
printf("ZAHL A:\n");
zahla= eingabezahlen(zahla);
printf("ZAHL B:\n");
zahlb= eingabezahlen(zahlb);
result = substraktionfunktion(zahla,zahlb);
printf("%lf - %lf\n", zahla, zahlb);
}
if(eingabe == c){
printf("MULTIPLIKATION WURDE AUSGEWÄHLT\n");
zahla= eingabezahlen(zahla);
printf("Zahl B :\n");
zahlb=eingabezahlen(zahlb);
result=multiplikationfunktion(zahla,zahlb);
printf("%lf * %lf\n", zahla, zahlb);
}
if(eingabe == d){
printf("DIVISION WURDE AUSGEWÄHLT\n");
printf("Zahl A: \n");
zahla= eingabezahlen(zahla);
printf("Zahl B: \n");
zahlb=eingabedivision(zahlb);
printf("%lf / %lf\n",zahla, zahlb);
result= divisionfunktion(zahla,zahlb);
}
if(eingabe == e){
printf("PROGRAMMENDE\n");
return ENDE;
}
printf("Ergebnis : %lf\n",result);
}
}
double eingabedivision(double b){
scanf("%lf", &b);
if(ZERO == b){
do{
printf("NICHT 0, neue Zahl: \n");
scanf("%lf",&b);
fflush(stdin);
}while(ZERO == b);
}
return b;
}
double divisionfunktion(double a, double b){
double result = 0.0;
result = a / b;
return result;
}
double multiplikationfunktion(double a,double b){
double result = 0.0;
result = a * b;
return result;
}
double substraktionfunktion(double a,double b){
double result = 0.0;
result = a - b;
return result;
}
double additionfunktion(double a,double b){
double result = 0.0;
result = a + b;
return result;
}
double eingabezahlen(double eingabe){
for(;;){
if(!scanf("%lf", &eingabe)){
printf("Falsche Eingabe!\n");
}
else{
return eingabe;
}
}
}
char eingabefunktion(char eingabe){
char a = "a";
char b = "b";
char c = "c";
char d = "d";
char e = "e";
printf("a)Addition\nb)Substraktion\nc)Multiplikation\nd)Division\ne)Programmende\n");
do{
scanf("%c",&eingabe);
fflush(stdin);
}while(eingabe != a && eingabe != b && eingabe != c && eingabe != d &&eingabe != e);
return eingabe;
}