// ----------- 3. Automat ------------------------------ void ausgabe(int geldstueck, float preis) { float restgeld; int anzahl; restgeld = geldstueck-preis + 0.001; printf("Rueckgabe: %.2f ",restgeld); // Wieviel Rückgeld bekommt man? 3-0.2 = 1.8 wird ausgegeben anzahl = restgeld/2; printf(" %d x Zwei-Euromuenzen \n",anzahl); restgeld=restgeld - anzahl * 2; anzahl = restgeld/1; //Int Division return Ganzzahl: Wieviele 1 Eurostücke ? entweder 0 oder 1 printf("\n\t\t %d x Ein-Euromuenze \n",anzahl); // Hier wird die Anzahl der 1 Eurostücke ausgegeben restgeld=restgeld - anzahl * 1; anzahl = restgeld/0.50; printf("\n\t\t %d x 50 Cent \n",anzahl); restgeld=restgeld - anzahl * 0.5; anzahl = restgeld/0.20; printf("\n\t\t %d x 20 Cent \n",anzahl); restgeld=restgeld - anzahl * 0.2; anzahl = restgeld/0.10; printf("\n\t\t %d x 10 Cent \n",anzahl); restgeld=restgeld - anzahl * 0.1; } void automat(void){ printf("\n\n-----------ICH BIN DAS BASHMENU BAAAAAAAAAAAAAAASH ------------\n\n"); printf ("\nBitte waehlen Sie: "); printf ("\n1 - Cappucchino 0,80 EUR"); printf ("\n2 - Kaffee schwarz 0,60 EUR"); printf ("\n3 - Zitronentee 0,40 EUR"); printf("\nEingabe: "); int eingabe; scanf("%d",&eingabe); switch(eingabe) { float geld; case 1: printf("\n\t\tSie haben Cappuchino gewaehlt \n\n"); printf("\t\tBitte Geld einwerfen: "); do{ scanf("%f",&geld); if (geld<0.8) printf("\n\tBitte Geldeinwerfen: "); } while(geld<0.80); ausgabe(geld,0.80); break; case 2: printf("\nSie haben Kaffee schwarz gewaehlt \n"); printf("Bitte Geld einwerfen: "); do{ scanf("%f",&geld); if (geld<0.6) printf("\n\tBitte Geldeinwerfen: "); } while(geld<0.6); ausgabe(geld,0.6); break; case 3: printf("\nSie haben Zitronentee gewaehlt \n"); printf("Bitte Geld einwerfen: "); do{ scanf("%f",&geld); if (geld<0.4) printf("\n\tBitte Geldeinwerfen: "); } while(geld<0.4); ausgabe(geld,0.4); break; } }