simonradev

Beer Stock

Oct 18th, 2016
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. using System;
  2.  
  3. namespace BeerStock
  4. {
  5. class Program
  6. {
  7. public static void Main(string[] args)
  8. {
  9. uint reservedBeers = uint.Parse(Console.ReadLine());
  10. string amountAndTypeOfBeers = string.Empty;
  11. uint valueHolder = 0;
  12. uint beerSum = 0;
  13. uint sixPacks = 6;
  14. uint cases = 24;
  15. uint casesLeft = 0;
  16. uint sixPacksLeft = 0;
  17. uint beersLeft = 0;
  18. uint casesPacksAndBeers = 0;
  19. uint beersNeeded = reservedBeers;
  20. uint brokenBeers = 0;
  21. uint leftOver = 0;
  22.  
  23. while (amountAndTypeOfBeers != "Exam Over")
  24. {
  25. amountAndTypeOfBeers = Console.ReadLine();
  26. string[] splittedString = amountAndTypeOfBeers.Split(' ');
  27. for (int currentWord = 0; currentWord <= 1; currentWord++)
  28. {
  29. if (currentWord == 0)
  30. {
  31. uint numValue;
  32. bool parse = uint.TryParse(splittedString[currentWord], out numValue);
  33. valueHolder = numValue;
  34. }
  35. else if (currentWord >= 1 && splittedString[currentWord] == "beers")
  36. {
  37. beerSum += valueHolder;
  38. }
  39. else if (currentWord >= 1 && splittedString[currentWord] == "sixpacks")
  40. {
  41. beerSum += (valueHolder * sixPacks);
  42. }
  43. else if (currentWord >= 1 && splittedString[currentWord] == "cases")
  44. {
  45. beerSum += (valueHolder * cases);
  46. }
  47. }
  48. }
  49.  
  50. if (reservedBeers > beerSum)
  51. {
  52. beersNeeded -= beerSum;
  53. casesPacksAndBeers = beersNeeded;
  54. casesLeft = (casesPacksAndBeers / 24);
  55. casesPacksAndBeers %= 24;
  56. sixPacksLeft = (casesPacksAndBeers / 6);
  57. casesPacksAndBeers %= 6;
  58. beersLeft = casesPacksAndBeers;
  59.  
  60. Console.WriteLine("Not enough beer. Beer needed: {0} cases, {1} sixpacks and {2} beers.",
  61. casesLeft,
  62. sixPacksLeft,
  63. beersLeft);
  64. }
  65. else
  66. {
  67. brokenBeers = (beerSum / 100);
  68. leftOver = (beerSum - brokenBeers - reservedBeers);
  69. casesPacksAndBeers = leftOver;
  70. casesLeft = (casesPacksAndBeers / 24);
  71. casesPacksAndBeers %= 24;
  72. sixPacksLeft = (casesPacksAndBeers / 6);
  73. casesPacksAndBeers %= 6;
  74. beersLeft = casesPacksAndBeers;
  75.  
  76. Console.WriteLine("Cheers! Beer left: {0} cases, {1} sixpacks and {2} beers.",
  77. casesLeft,
  78. sixPacksLeft,
  79. beersLeft);
  80. }
  81.  
  82. Console.Write("Press any key to continue . . . ");
  83. Console.ReadKey(true);
  84. }
  85. }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment