Sininerebane

Untitled

Nov 9th, 2023
817
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.91 KB | Software | 0 0
  1. Задача
  2. Написать конвертер валют (3 валюты).
  3. У пользователя есть баланс в каждой из представленных валют. Он может попросить сконвертировать часть баланса с одной валюты в другую. Тогда у него с баланса одной валюты снимется X и зачислится на баланс другой Y. Курс конвертации должен быть просто прописан в программе.
  4. По имени переменной курса конвертации должно быть понятно, из какой валюты в какую валюту конвертируется.
  5. Должна выполняться однотипная операция или везде умножение "*" или деление "/". Для чего это нужно подробнее позже узнаете в разделе "Функции". Но придётся объявить коэффициенты на все случаи.
  6.  
  7. Программа должна завершиться тогда, когда это решит пользователь.
  8.  
  9. Дополнительно: Если решение строится на switch, то принято работать с константами (в остальных случаях объявляются переменные). Для каждого case следует объявить константу.
  10. Пример:
  11. const string CommandExit = "exit";
  12.  
  13. case CommandExit:
  14. break;
  15.  
  16. Константы объявляются перед блоком переменных и отделяются от них пустой строкой. Константы именуются с большой буквы. Если константа создана для связки консольное меню + switch (case) к имени константы добавляется Command или Menu - это передает суть константы, превращая ее в существительное, а не глагол и улучшает читаемость кода.
  17.  
  18.  
  19. namespace ConvertorValut
  20. {
  21.     internal class Program
  22.     {
  23.         static void Main(string[] args)
  24.         {
  25.  
  26.             const string RubMenu = "1";
  27.             const string EuroMenu = "2";
  28.             const string UsdMenu = "3";
  29.  
  30.             Console.OutputEncoding = Encoding.UTF8;
  31.             float rubToEur;
  32.             float eurToRub;
  33.             float usdToRub;
  34.             float rub;
  35.             float euro;
  36.             float usd;
  37.             string userInput;
  38.             float currencyCount;
  39.  
  40.             rubToEur = 0.01F;
  41.             eurToRub = 98.29F;
  42.             usdToRub = 91.68F;
  43.  
  44.             Console.WriteLine("Добро пожаловать в обменник валют. У нас вы можете обменять рубли в евро и евро в рубли. ");
  45.             Console.WriteLine("Введите баланс рублей: ");
  46.             rub = Convert.ToSingle(Console.ReadLine());
  47.             Console.WriteLine("Введите баланс евро: ");
  48.             euro = Convert.ToSingle(Console.ReadLine());
  49.             Console.WriteLine("Введите баланс долларов: ");
  50.             usd = Convert.ToSingle(Console.ReadLine());
  51.  
  52.             Console.WriteLine("1 - обменять рубли на евро");
  53.             Console.WriteLine("2 - обменять евро на рубли");
  54.             Console.WriteLine("3 - обменять рубли на доллары");
  55.             userInput = Console.ReadLine();
  56.  
  57.  
  58.             switch (userInput)
  59.             {
  60.                 case RubMenu:
  61.                     Console.WriteLine("Обмен рублей на евро");
  62.                     Console.Write("Сколько вы хотите обменять?: ");
  63.                     currencyCount = Convert.ToSingle(Console.ReadLine());
  64.                     if (rub >= currencyCount)
  65.                     {
  66.                         rub -= currencyCount;
  67.                         euro += currencyCount / eurToRub;
  68.                     }
  69.                     else
  70.                     {
  71.                         Console.WriteLine("Недопустимое количество рублей");
  72.                     }
  73.                     break;
  74.                 case EuroMenu:
  75.                     Console.WriteLine("Обмен евро на рубли");
  76.                     Console.Write("Сколько вы хотите обменять?: ");
  77.                     currencyCount = Convert.ToSingle(Console.ReadLine());
  78.                     if ( euro >= currencyCount)
  79.                     {
  80.                         euro -= currencyCount;
  81.                         rub += currencyCount / rubToEur;
  82.                     }
  83.                     else
  84.                     {
  85.                         Console.WriteLine("Недопустимое количество евро");
  86.                     }
  87.                     break;
  88.                 case UsdMenu:
  89.                     Console.WriteLine("Обмен рублей на доллары");
  90.                     Console.Write("Сколько вы хотите обменять?: ");
  91.                     currencyCount = Convert.ToSingle(Console.ReadLine());
  92.                     if (usd >= currencyCount)
  93.                     {
  94.                         rub -= currencyCount;
  95.                         usd += currencyCount / usdToRub;
  96.                     }
  97.                     else
  98.                     {
  99.                         Console.WriteLine("Недопустимое количество рублей");
  100.                     }
  101.                     break;
  102.             }
  103.  
  104.             Console.WriteLine($"Ваш баланс {rub}  рублей и {euro} евро и {usd} долларов ");
  105.             Console.ReadKey();
  106.         }
  107.     }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment