CurrencyConverter

0
2 года назад
2 года назад
2 года назад
2 года назад
README.md

Конвертер валют

Как вообще работает этот код?

Сначала создается структура для парсинга данных с json в строку и другие типы для упрощения работы. В моём случае она выглядит так:

По желанию можно структуру поменять, если Вы собираетесь использовать для получения данных о валютах другой сайт, или же вам нужно больше данных по типу ID и т.д.

Сайт для справки:

https://www.cbr-xml-daily.ru/daily_json.js

Если вы решили парсить всю информацию о валютах с этого сайта, указанного в url, Ваша структура может выглядеть примерно так:

Дальше мы объявляем функцию, в которой делаем запрос на получение данных из этого сайта. Для этого нужен доступ в Интернет(логично), и доступ на сайт(В моем случае он открытый):

И вот, как только мы получили данные, читаем, если они есть:

Затем в действие приходит структура, которую мы создали ранее.

Объявляем её в коде и начинаем парсить json данные(если они пришли):

А затем, мы создаем карту, в которую помещаем данные о валюте:

И, завершаем функцию выводом всех доступных(распарсенных) на данный момент валют:

Есть вторая функция, основная, в которой проходят расчёты и т.д.

Сначала мы её объявляем, в аргументы передаем 2 объекта типа string и 1 типа float64, а сама функция имеет типы float64, error:

Также, в данном куске кода есть обращение к функции выше, а ещё происходит обращение, то есть код дальше не пойдёт, если, например, данных нет или они не распарсились.

Затем мы запрашиваем у пользователя первую валюту, если её ввели, к примеру, маленькими буквами(сама валюта KZT, а ввели ее - kzT, то маленькие буквы преобразятся в заглавные), ну а ещё проверка на существование валюты:

Подобный принцип и со второй валютой, но я добавил проверку на одинаковые валюты:

Далее запрашивается количество первой валюты, и сама формула вычисления:

Выполнив тест, можно проверить, как работает код.