Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Задача
- Написать конвертер валют (3 валюты).
- У пользователя есть баланс в каждой из представленных валют. Он может попросить сконвертировать часть баланса с одной валюты в другую. Тогда у него с баланса одной валюты снимется X и зачислится на баланс другой Y. Курс конвертации должен быть просто прописан в программе.
- По имени переменной курса конвертации должно быть понятно, из какой валюты в какую валюту конвертируется.
- Должна выполняться однотипная операция или везде умножение "*" или деление "/". Для чего это нужно подробнее позже узнаете в разделе "Функции". Но придётся объявить коэффициенты на все случаи.
- Программа должна завершиться тогда, когда это решит пользователь.
- Дополнительно: Если решение строится на switch, то принято работать с константами (в остальных случаях объявляются переменные). Для каждого case следует объявить константу.
- Пример:
- const string CommandExit = "exit";
- case CommandExit:
- break;
- Константы объявляются перед блоком переменных и отделяются от них пустой строкой. Константы именуются с большой буквы. Если константа создана для связки консольное меню + switch (case) к имени константы добавляется Command или Menu - это передает суть константы, превращая ее в существительное, а не глагол и улучшает читаемость кода.
- namespace ConvertorValut
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- const string RubMenu = "1";
- const string EuroMenu = "2";
- const string UsdMenu = "3";
- Console.OutputEncoding = Encoding.UTF8;
- float rubToEur;
- float eurToRub;
- float usdToRub;
- float rub;
- float euro;
- float usd;
- string userInput;
- float currencyCount;
- rubToEur = 0.01F;
- eurToRub = 98.29F;
- usdToRub = 91.68F;
- Console.WriteLine("Добро пожаловать в обменник валют. У нас вы можете обменять рубли в евро и евро в рубли. ");
- Console.WriteLine("Введите баланс рублей: ");
- rub = Convert.ToSingle(Console.ReadLine());
- Console.WriteLine("Введите баланс евро: ");
- euro = Convert.ToSingle(Console.ReadLine());
- Console.WriteLine("Введите баланс долларов: ");
- usd = Convert.ToSingle(Console.ReadLine());
- Console.WriteLine("1 - обменять рубли на евро");
- Console.WriteLine("2 - обменять евро на рубли");
- Console.WriteLine("3 - обменять рубли на доллары");
- userInput = Console.ReadLine();
- switch (userInput)
- {
- case RubMenu:
- Console.WriteLine("Обмен рублей на евро");
- Console.Write("Сколько вы хотите обменять?: ");
- currencyCount = Convert.ToSingle(Console.ReadLine());
- if (rub >= currencyCount)
- {
- rub -= currencyCount;
- euro += currencyCount / eurToRub;
- }
- else
- {
- Console.WriteLine("Недопустимое количество рублей");
- }
- break;
- case EuroMenu:
- Console.WriteLine("Обмен евро на рубли");
- Console.Write("Сколько вы хотите обменять?: ");
- currencyCount = Convert.ToSingle(Console.ReadLine());
- if ( euro >= currencyCount)
- {
- euro -= currencyCount;
- rub += currencyCount / rubToEur;
- }
- else
- {
- Console.WriteLine("Недопустимое количество евро");
- }
- break;
- case UsdMenu:
- Console.WriteLine("Обмен рублей на доллары");
- Console.Write("Сколько вы хотите обменять?: ");
- currencyCount = Convert.ToSingle(Console.ReadLine());
- if (usd >= currencyCount)
- {
- rub -= currencyCount;
- usd += currencyCount / usdToRub;
- }
- else
- {
- Console.WriteLine("Недопустимое количество рублей");
- }
- break;
- }
- Console.WriteLine($"Ваш баланс {rub} рублей и {euro} евро и {usd} долларов ");
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment