Advertisement
IvanOseledko

Homework11

Sep 9th, 2023
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 8.57 KB | None | 0 0
  1. using System;
  2.  
  3. namespace Hw11
  4. {
  5.     class Program
  6.     {
  7.         static void Main()
  8.         {
  9.             float exchangeCurrencyCount;
  10.  
  11.             const string CommandToBuyDollarsForRubles = "1";
  12.             const string CommandToBuyEurosForRubles = "2";
  13.             const string CommandToBuyRubblesForDollars = "3";
  14.             const string CommandToBuyEurosForDollars = "4";
  15.             const string CommandToBuyRublesForEuros = "5";
  16.             const string CommandToBuyDollarsForEuros = "6";
  17.             const string CommandExit = "exit";
  18.             string userSelection;
  19.             bool isOpen = true;
  20.  
  21.             float rublesInWallet;
  22.             float dollarsInWallet;
  23.             float eurosInWallet;
  24.  
  25.             float rubToUsd = 97f;
  26.             float rubToEuros = 104f;
  27.             float usdToRub = 99f;
  28.             float usdToEuros = 1.7f;
  29.             float eurosToRub = 106f;
  30.             float eurosToUsd = 1.10f;
  31.  
  32.             Console.WriteLine("Добро пожаловать в обменник валют!\n");
  33.             Console.Write("Введите ваш баланс в рублях: ");
  34.             rublesInWallet = Convert.ToSingle(Console.ReadLine());
  35.             Console.Write("Введите ваш баланс в долларах: ");
  36.             dollarsInWallet = Convert.ToSingle(Console.ReadLine());
  37.             Console.Write("Введите ваш баланс в евро: ");
  38.             eurosInWallet = Convert.ToSingle(Console.ReadLine());
  39.  
  40.             Console.Clear();
  41.  
  42.             while (isOpen)
  43.             {
  44.                 Console.WriteLine($"У Вас на балансе {rublesInWallet} рублей, {dollarsInWallet} долларов и {eurosInWallet} евро.\n");
  45.                 Console.WriteLine("Выберите нужную операцию\n");
  46.  
  47.                 Console.WriteLine($"Введите {CommandToBuyDollarsForRubles} для обмена рублей на доллары.\nВведите {CommandToBuyEurosForRubles} для обмена рублей на евро.");
  48.                 Console.WriteLine($"Введите {CommandToBuyRubblesForDollars} для обмена долларов на рубли.\nВведите {CommandToBuyEurosForDollars} для обмена долларов на евро.");
  49.                 Console.WriteLine($"Введите {CommandToBuyRublesForEuros} для обмена евро на рубли.\nВведите {CommandToBuyDollarsForEuros} для обмена евро на доллары.");
  50.                 Console.WriteLine($"Введите {CommandExit} для завершения работы программы.");
  51.  
  52.                 Console.Write("\nВаш выбор: ");
  53.                 userSelection = Console.ReadLine();
  54.                 Console.Clear();
  55.  
  56.                 switch (userSelection)
  57.                 {
  58.                     case CommandToBuyDollarsForRubles:
  59.                         Console.WriteLine("Операция обмена рублей на доллары\n");
  60.                         Console.Write("Введите, сколько рублей Вы хотите обменять: ");
  61.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  62.  
  63.                         if (exchangeCurrencyCount <= rublesInWallet)
  64.                         {
  65.                             rublesInWallet -= exchangeCurrencyCount;
  66.                             dollarsInWallet += exchangeCurrencyCount / rubToUsd;
  67.                         }
  68.                         else
  69.                         {
  70.                             Console.WriteLine("Недостаточно средств для обмена.");
  71.                         }
  72.                         break;
  73.  
  74.                     case CommandToBuyEurosForRubles:
  75.                         Console.WriteLine("Операция обмена рублей на евро\n");
  76.                         Console.Write("Введите, сколько рублей Вы хотите обменять: ");
  77.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  78.  
  79.                         if (exchangeCurrencyCount <= rublesInWallet)
  80.                         {
  81.                             rublesInWallet -= exchangeCurrencyCount;
  82.                             eurosInWallet += exchangeCurrencyCount / rubToEuros;                            
  83.                         }
  84.                         else
  85.                         {
  86.                             Console.WriteLine("Недостаточно средств для обмена.");
  87.                         }
  88.                         break;
  89.  
  90.                     case CommandToBuyRubblesForDollars:
  91.                         Console.WriteLine("Операция обмена долларов на рубли\n");
  92.                         Console.Write("Введите, сколько долларов Вы хотите обменять: ");
  93.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  94.  
  95.                         if (exchangeCurrencyCount <= dollarsInWallet)
  96.                         {
  97.                             dollarsInWallet -= exchangeCurrencyCount;
  98.                             rublesInWallet += exchangeCurrencyCount * rubToUsd;                        
  99.                         }
  100.                         else
  101.                         {
  102.                             Console.WriteLine("Недостаточно средств для обмена");
  103.                         }
  104.                         break;
  105.  
  106.                     case CommandToBuyEurosForDollars:
  107.                         Console.WriteLine("Операция обмена долларов на евро\n");
  108.                         Console.Write("Введите, сколько долларов Вы хотите обменять: ");
  109.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  110.  
  111.                         if (exchangeCurrencyCount <= dollarsInWallet)
  112.                         {
  113.                             dollarsInWallet -= exchangeCurrencyCount;
  114.                             eurosInWallet += exchangeCurrencyCount / usdToEuros;
  115.                         }
  116.                         else
  117.                         {
  118.                             Console.WriteLine("Недостаточно средств для обмена");
  119.                         }
  120.                         break;
  121.  
  122.                     case CommandToBuyRublesForEuros:
  123.                         Console.WriteLine("Операция обмена евро на рубли\n");
  124.                         Console.Write("Введите, сколько евро Вы хотите обменять: ");
  125.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  126.  
  127.                         if (exchangeCurrencyCount <= eurosInWallet)
  128.                         {
  129.                             eurosInWallet -= exchangeCurrencyCount;
  130.                             rublesInWallet += exchangeCurrencyCount * eurosToRub;
  131.                         }
  132.                         else
  133.                         {
  134.                             Console.WriteLine("Недостаточно средств для обмена");
  135.                         }
  136.                         break;
  137.  
  138.                     case CommandToBuyDollarsForEuros:
  139.                         Console.WriteLine("Операция обмена евро на доллары\n");
  140.                         Console.Write("Введите, сколько евро Вы хотите обменять: ");
  141.                         exchangeCurrencyCount = Convert.ToSingle(Console.ReadLine());
  142.  
  143.                         if (exchangeCurrencyCount <= eurosInWallet)
  144.                         {
  145.                             eurosInWallet -= exchangeCurrencyCount;
  146.                             dollarsInWallet += exchangeCurrencyCount * eurosToUsd;
  147.                         }
  148.                         break;
  149.  
  150.                     case CommandExit:
  151.                         isOpen = false;
  152.                         break;
  153.  
  154.                     default:
  155.                         Console.WriteLine("Введена неверная операция\n");
  156.                         Console.WriteLine("Нажмите любую клавишу для продолжения...");
  157.                         Console.ReadKey();
  158.                         break;
  159.                 }
  160.                
  161.                 Console.Clear();
  162.             }
  163.  
  164.             Console.Clear();
  165.             Console.WriteLine($"У Вас на балансе {rublesInWallet} рублей, {dollarsInWallet} долларов и {eurosInWallet} евро.\n");
  166.         }
  167.     }
  168. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement