Материал: Лаб 7 - Валюта - СФ

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

6

Console.WriteLine($"Перевод равен: {count * rate}, в центах это: {count * rate * 100}");

}

public void RubInPound(double count)

{

double rate = 0.0066;

Console.WriteLine($"Перевод равен: {count * rate}, в пенсах это: {count * rate * 100}");

}

public void DolInPound(double count)

{

double rate = 0.7674;

Console.WriteLine($"Перевод равен: {count * rate}, в пенсах это: {count * rate * 100}");

}

public void EuroInPound(double count)

{

double rate = 0.83915;

Console.WriteLine($"Перевод равен: {count * rate}, в пенсах это: {count * rate * 100}");

}

}

class Purse : Currency

{

Currency[] purse = { new InRub(), new InDoll(), new InEuro(), new InPound() };

}

class InRub : Currency { } class InDoll : Currency { } class InEuro : Currency { } class InPound : Currency { } class Program

{

static void Main(string[] args)

{

Currency Rub = new InRub(); Currency Doll = new InDoll(); Currency Euro = new InEuro(); Currency Pound = new InPound();

Console.WriteLine("Введите количество денег"); double quantity = int.Parse(Console.ReadLine());

Console.WriteLine("Из какой валюты: \n 1 - Рубль \n 2 - Доллар \n 3 - Евро \n 4 - Фунт");

int choice = int.Parse(Console.ReadLine()); if (choice == 1)

{

Console.WriteLine("В какую валюту перевести: \n 1 - Доллар \n 2 - Евро

\n 3 - Фунт");

int choice2 = int.Parse(Console.ReadLine()); if (choice2 == 1) Rub.RubInDol(quantity);

if (choice2 == 2) Rub.RubInEuro(quantity); if (choice2 == 3) Rub.RubInPound(quantity);

}

if (choice == 2)

{

Console.WriteLine("В какую валюту перевести: \n 1 - Рубль \n 2 - Евро

\n 3 - Фунт");

int choice2 = int.Parse(Console.ReadLine()); if (choice2 == 1) Doll.DolInRub(quantity); if (choice2 == 2) Doll.DolInEuro(quantity); if (choice2 == 3) Doll.DolInPound(quantity);

}

if (choice == 3)

{

7

Console.WriteLine("В какую валюту перевести: \n 1 - Рубль \n 2 -

Доллар \n 3 - Фунт");

int choice2 = int.Parse(Console.ReadLine()); if (choice2 == 1) Euro.EuroInRub(quantity); if (choice2 == 2) Euro.EuroInDol(quantity); if (choice2 == 3) Euro.EuroInPound(quantity);

}

if (choice == 4)

{

Console.WriteLine("В какую валюту перевести: \n 1 - Рубль \n 2 -

Доллар \n 3 - Евро ");

int choice2 = int.Parse(Console.ReadLine()); if (choice2 == 1) Pound.PoundInRub(quantity); if (choice2 == 2) Pound.PoundInDol(quantity); if (choice2 == 3) Pound.PoundInEuro(quantity);

}

}

}

}

}

Рисунок 3.1 - Работа программы 1

Данная программа работает корректно, без каких-либо проблем.

8

5Заключение

Входе работы были получены навыки использования механизмов инкапсуляции,

наследования и полиморфизма.

В данном задании не получилось реализовать динамическое изменение курса валют, но остальные задания были выполнены корректно. Был создан абстрактный класс, были созданы классы валют, был создан класс «Кошелек», в котором был создан массив, содержащий объекты этих классов

9

Список использованной литературы

1. ГОСТ 19.701-90 (ИСО 5807-85) Единая система программной документации (ЕСПД).

Схемы алгоритмов, программ, данных и систем. Обозначения условные и правила выполнения.

2. Документация по C#. [Электронный ресурс]. – Режим доступа: https://docs.microsoft.com/ru-ru/dotnet/csharp (дата обращения: 15.02.2020)

3.Кнут Д.Э. Искусство программирования. – Т. 1: Основные алгоритмы. – 3-е изд.; пер. с

англ. – М.: ИД «Вильямс», 2016. – 720 с.

4.Харченко С.С. Основы программирования: учебно-методическое пособие. – Томск: В-

Спектр, 2020. – XX с.

Источник: https://studfile.net/preview/16706714/