Advertisement
nikolayneykov

Untitled

Mar 8th, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.78 KB | None | 0 0
  1. using System;
  2.  
  3. class Program
  4. {
  5.     static void Main(string[] args)
  6.     {
  7.         int energy = 100;
  8.         int coins = 100;
  9.         string[] workingDayEvents = Console.ReadLine().Split('|');
  10.  
  11.         foreach (var day in workingDayEvents)  //обхождаме всеки ден от workingDayEvents
  12.         {
  13.             string[] tokens = day.Split('-');  //сплитваме (евента или продукта) и стойността от стринга с -
  14.             string content = tokens[0];        //евента за деня или съставката която трябва да се купи
  15.             int value = int.Parse(tokens[1]);  //стойността на евента или продукта
  16.             string message = string.Empty;     //съобщението което ще принтираме след всяка итерация
  17.  
  18.             switch (content)
  19.             {
  20.                 case "rest":
  21.                     int gainedEnergy = Math.Min(value, 100 - energy); //изчисляваме колко енергия ще получим така че да не превишим 100
  22.                     energy += gainedEnergy; //добавяме към нашата енергия изчислената gainedEnergy
  23.                     message = $"You gained {gainedEnergy} energy.\nCurrent energy: {energy}."; //задаваме стойност на съобщението ни
  24.                     break;
  25.                 case "order":
  26.                     if (energy - 30 < 0)                       //ако след опит за поръчка енергията ни падне под 0
  27.                     {
  28.                         energy += 50;                          //добавяме 50 енергия
  29.                         message = "You had to rest!";          //задаваме стойност на съобщението ни
  30.                     }
  31.                     else                                       //ако можем да изпълним поръчката
  32.                     {
  33.                         energy -= 30;                          //вадим 30 от енергията
  34.                         coins += value;                        //добавяме парите
  35.                         message = $"You earned {value} coins.";//задаваме стойност на съобщението ни
  36.                     }
  37.                     break;
  38.                 default:                                      //ако трябва да купуваме продукт
  39.                     coins -= value;                           //изваждаме от парите ни цената на продукта
  40.  
  41.                     if (coins > 0)                            //ако не сме банкрутирали          
  42.                     {
  43.                         message = $"You bought {content}.";   //задаваме стойност на съобщението ни
  44.                     }
  45.                     else                                      //банкрутирали сме
  46.                     {
  47.                         message = $"Closed! Cannot afford {content}."; //задаваме стойност на съобщението ни
  48.                     }
  49.                     break;
  50.             }
  51.  
  52.             Console.WriteLine(message); //принтираме настоящото съобщение
  53.  
  54.             if (coins <= 0)        //при банкрут прекратяваме итерирането по масива
  55.             {
  56.                 break;
  57.             }
  58.         }
  59.  
  60.         if (coins > 0)             //ако не сме банкрутирали
  61.         {
  62.             Console.WriteLine($"Day completed!\nCoins: {coins}\nEnergy: {energy}");
  63.         }
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement