Skip to content

Instantly share code, notes, and snippets.

@Hellhackee
Created November 21, 2020 21:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Hellhackee/0ee59a8ea2b97fc0b7fca3898223430c to your computer and use it in GitHub Desktop.
Save Hellhackee/0ee59a8ea2b97fc0b7fca3898223430c to your computer and use it in GitHub Desktop.
CS Light Lesson 9.1 (converter)
float rub = 100;
float usd = 12;
float eur = 20;
int rubToUsd = 60;
float rubToEur = 90;
float UsdToEur = 1.2f;
string valuesToTransfer;
float countToChange;
bool isMoneyEnought = true;
char continueValue;
Console.WriteLine("Добро пожаловать в пункт обмена валюты." + "" +
"У нас вы можете произвести обмен следующих валют: Рубли, Доллары, Евро");
while (true)
{
if (!isMoneyEnought)
{
Console.WriteLine("Извините, у вас недостаточно средств.");
}
Console.WriteLine($"Сейчас у вас в кошельке {rub} рублей, {usd} долларов, {eur} евро.");
Console.Write("Хотите продолжить? (Y/N) ");
continueValue = Convert.ToChar(Console.ReadLine());
if (continueValue == 'Y')
{
Console.WriteLine("Выберите валюту, которую вы хотите обменять:");
Console.WriteLine(" 1 - Рубли\n 2 - Доллары\n 3 - Евро");
valuesToTransfer = Console.ReadLine();
Console.WriteLine("Выберите валюту, на которую вы хотите обменять:");
Console.WriteLine(" 1 - Рубли\n 2 - Доллары\n 3 - Евро");
valuesToTransfer += Console.ReadLine();
Console.Write("Сколько вы хотите обменять: ");
countToChange = Convert.ToSingle(Console.ReadLine());
switch (valuesToTransfer)
{
case "12":
isMoneyEnought = rub >= countToChange;
rub -= countToChange * Convert.ToInt32(isMoneyEnought);
usd += countToChange / rubToUsd * Convert.ToInt32(isMoneyEnought);
break;
case "13":
isMoneyEnought = rub >= countToChange;
rub -= countToChange * Convert.ToInt32(isMoneyEnought);
eur += countToChange / rubToEur * Convert.ToInt32(isMoneyEnought);
break;
case "21":
isMoneyEnought = usd >= countToChange;
usd -= countToChange * Convert.ToInt32(isMoneyEnought);
rub += countToChange * rubToUsd * Convert.ToInt32(isMoneyEnought);
break;
case "23":
isMoneyEnought = usd >= countToChange;
usd -= countToChange * Convert.ToInt32(isMoneyEnought);
eur += countToChange / UsdToEur * Convert.ToInt32(isMoneyEnought);
break;
case "31":
isMoneyEnought = eur >= countToChange;
eur -= countToChange * Convert.ToInt32(isMoneyEnought);
rub += countToChange * rubToEur * Convert.ToInt32(isMoneyEnought);
break;
case "32":
isMoneyEnought = eur >= countToChange;
eur -= countToChange * Convert.ToInt32(isMoneyEnought);
usd += countToChange * UsdToEur * Convert.ToInt32(isMoneyEnought);
break;
case "11":
case "22":
case "33":
isMoneyEnought = true;
break;
default:
isMoneyEnought = true;
Console.WriteLine("Извините, но такой валюты у нас нет.");
continue;
}
}
else if (continueValue == 'N')
{
Console.WriteLine("Всего доброго. Приходите к нам еще.");
break;
}
else
{
Console.WriteLine("Извините, вы выбрали неверное значение.");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment