Advertisement
Guest User

Untitled

a guest
Jul 28th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.83 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3.     float EingabeSorte();
  4.     float EingabeMenge();
  5.     float preisAngabe();
  6.     float returnSumme();
  7.     void ausgabeFlaschen();
  8.     void ausgabeWachselGeld();
  9.    
  10. int main() {
  11.  
  12. float sorte=0;
  13. float menge=0;
  14. float geld=0;
  15. float zwischenSumme=0;
  16. float endSumme=0;
  17. float preis;
  18.  
  19. int a;
  20.  
  21. sorte = EingabeSorte();
  22. menge = EingabeMenge();
  23. preis = preisAngabe(sorte);
  24.  
  25. zwischenSumme = preis*menge;
  26.  
  27. endSumme = returnSumme(zwischenSumme);
  28. ausgabeFlaschen();
  29. ausgabeWachselGeld();
  30.  
  31.  
  32.  
  33. // Ausgabe des benötigten geldes
  34. printf("Werfen sie bitte %.2f Euro ein!", zwischenSumme);
  35.  
  36. scanf("%d", &a);
  37.  
  38. }
  39.  
  40. // eingabewerte Sorte 1,2,3
  41. float EingabeSorte()
  42. {
  43.     float eingabe=0;
  44. printf("Getraenke Automat c2.0\n\n");
  45. printf("Waehle ein Getraenk\n");
  46. printf("1) Wasser (0.50 Euro)\n");
  47. printf("2) Limonade (1.00 Euro)\n");
  48. printf("3) Bier (2.00 Euro)\n\n");
  49.  
  50. printf("\n\nGebe sie bitte 1, 2 oder 3 fuer das gewuenschte Getraenk ein!\n");
  51. scanf("%d", &eingabe);
  52.  
  53. // Sicherheitsabfrage
  54. if(eingabe!=1 && eingabe!=2 && eingabe!=3)
  55.     {
  56.     printf("Nicht norhanden.\n---ENDE---");
  57.     }
  58. return eingabe;
  59. }
  60.  
  61. // menge des Getränks
  62. float EingabeMenge()
  63. {
  64.     float menge=1;
  65. printf("\n\nBitte geben sie die Menge ein!\n");
  66. scanf("%d", &menge);
  67.  
  68. return menge;
  69. }
  70.  
  71. // Preis angabe anhand der Sorte
  72. float preisAngabe(int sorte)
  73. {
  74.  
  75.     float preis=0;
  76.  
  77. // Ausführung
  78. printf("\n\n------ Bezahlvorgang ------\n\n-");
  79.  
  80. switch(sorte)
  81. {
  82. case 1:
  83.     preis = 0.5;
  84.     break;
  85.  
  86. case 2:
  87.     preis = 1.0;
  88.     break;
  89.  
  90. case 3:
  91.     preis = 2.0;
  92.     break;
  93.  
  94. default:
  95.     printf("\nDieses Getraenkenummer gibt es nicht \n---ENDE!---");
  96. }
  97.  
  98. return preis;
  99.  
  100. }
  101.  
  102. // Einwurd von Geld bis die Summe erreicht ober überschritten wird!
  103. float returnSumme(float zwischenSumme)
  104. {
  105.  
  106. float aktuelleSumme=0;
  107. float geld=0;
  108.  
  109. do {
  110.  
  111.     printf("\n\nAktuelle Summe: %.2f", aktuelleSumme);
  112.     printf("\nWerfen sie Geld ein!\n");
  113.     scanf("%f", &geld);
  114.  
  115.  
  116.     // Prüfung ob man nicht Minus Geld einwerfen will
  117.     if(geld < 0)
  118.     {
  119.         printf("Ihr koennt kein Geld kleiner 0 einwerfen!");
  120.             continue;
  121.     }
  122.     // Eingewirfenes Geld zusammenrechnen
  123.     aktuelleSumme += geld;
  124.  
  125. }
  126. while(zwischenSumme > aktuelleSumme);
  127.  
  128. return aktuelleSumme;
  129.  
  130. }
  131.  
  132. // Ausgabe der Flaschen
  133. void ausgabeFlaschen(float menge)
  134. {
  135.     int i;
  136.  
  137. printf("\n\n--- Getraenkeausgabe ---\n\n");
  138.  
  139. for(i=0; i<menge; i++)
  140.     {
  141.     printf("Flasche %d von %d wurde ausgegeben\n", i+1, menge);
  142.     }
  143. }
  144.  
  145. // Wechselgeld ausgeben falls vorhanden
  146. void ausgabeWachselGeld(float endSumme, float zwischenSumme)
  147. {
  148.     float WachselGeld=0;
  149.  
  150. WachselGeld = endSumme - zwischenSumme;
  151.  
  152. if(WachselGeld > 0)
  153.     {
  154.     printf("\n\n--- Wachselgeld ---");
  155.     printf("\nBitte entnehmen sie ihr Restgeld: %.2f", WachselGeld);
  156.     }
  157.  
  158. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement