Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace BeerStock
- {
- class Program
- {
- public static void Main(string[] args)
- {
- uint reservedBeers = uint.Parse(Console.ReadLine());
- string amountAndTypeOfBeers = string.Empty;
- uint valueHolder = 0;
- uint beerSum = 0;
- uint sixPacks = 6;
- uint cases = 24;
- uint casesLeft = 0;
- uint sixPacksLeft = 0;
- uint beersLeft = 0;
- uint casesPacksAndBeers = 0;
- uint beersNeeded = reservedBeers;
- uint brokenBeers = 0;
- uint leftOver = 0;
- while (amountAndTypeOfBeers != "Exam Over")
- {
- amountAndTypeOfBeers = Console.ReadLine();
- string[] splittedString = amountAndTypeOfBeers.Split(' ');
- for (int currentWord = 0; currentWord <= 1; currentWord++)
- {
- if (currentWord == 0)
- {
- uint numValue;
- bool parse = uint.TryParse(splittedString[currentWord], out numValue);
- valueHolder = numValue;
- }
- else if (currentWord >= 1 && splittedString[currentWord] == "beers")
- {
- beerSum += valueHolder;
- }
- else if (currentWord >= 1 && splittedString[currentWord] == "sixpacks")
- {
- beerSum += (valueHolder * sixPacks);
- }
- else if (currentWord >= 1 && splittedString[currentWord] == "cases")
- {
- beerSum += (valueHolder * cases);
- }
- }
- }
- if (reservedBeers > beerSum)
- {
- beersNeeded -= beerSum;
- casesPacksAndBeers = beersNeeded;
- casesLeft = (casesPacksAndBeers / 24);
- casesPacksAndBeers %= 24;
- sixPacksLeft = (casesPacksAndBeers / 6);
- casesPacksAndBeers %= 6;
- beersLeft = casesPacksAndBeers;
- Console.WriteLine("Not enough beer. Beer needed: {0} cases, {1} sixpacks and {2} beers.",
- casesLeft,
- sixPacksLeft,
- beersLeft);
- }
- else
- {
- brokenBeers = (beerSum / 100);
- leftOver = (beerSum - brokenBeers - reservedBeers);
- casesPacksAndBeers = leftOver;
- casesLeft = (casesPacksAndBeers / 24);
- casesPacksAndBeers %= 24;
- sixPacksLeft = (casesPacksAndBeers / 6);
- casesPacksAndBeers %= 6;
- beersLeft = casesPacksAndBeers;
- Console.WriteLine("Cheers! Beer left: {0} cases, {1} sixpacks and {2} beers.",
- casesLeft,
- sixPacksLeft,
- beersLeft);
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment