Advertisement
Guest User

Untitled

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