Обмен валют в рб: Курсы валют — ВСЕ БАНКИ БЕЛАРУСИ. USD,RUR,BYR,EUR, курс ДОЛЛАРА, курс ЕВРО

money/variable_exchange.rb на главной · RubyMoney/money · GitHub

.

требуют «деньги/банк/база»
требуется ‘money/rates_store/memory’
требуется ‘json’
требуется ‘yaml’
класс Деньги
Модуль

Банк
# Выдается при запросе неизвестного формата скорости.
класс UnknownRateFormat < StandardError; конец
# Класс для помощи в обмене денег между различными валютами. К
# по умолчанию класс +Money+ использует объект этого класса (доступен
# через +Money#bank+) для обмена валюты.
#
# По умолчанию +Money::Bank::VariableExchange+ ничего не знает о
# коэффициент конверсии. Их нужно указать вручную с помощью +add_rate+, после
# с которым можно совершать обмены с +#exchange_with+.
#
# Курсы валют хранятся в памяти с использованием +Money::RatesStore::Memory+ по умолчанию.
# Передать хранилища пользовательских ставок для других типов хранилищ (файл, база данных и т. д.)
# @пример
# банк = Money::Bank::VariableExchange.new
# bank.add_rate(«USD», «CAD», 1.24515)
# bank.add_rate(«CAD», «USD», 0.803115)
#
# c1 = Money.new(100_00, «USD»)
# c2 = Money.new(100_00, «CAD»)
#
# # Обмен 100 долларов США на канадские доллары:
# bank. exchange_with(c1, «CAD») #=> #<Дробная часть денег:12451 валюта:CAD>
#
# # Обмен 100 канадских долларов на доллары США:
# bank.exchange_with(c2, «USD») #=> #<Дробная часть денег:8031 валюта:USD>
#
# # С хранилищем пользовательских курсов обмена
# redis_store = MyCustomRedisStore.new (хост: ‘localhost: 6379’)
# банк = Money::Bank::VariableExchange.new(redis_store)
# # Магазин ставок в Redis
# bank. add_rate ‘USD’, ‘CAD’, 0.98
# # Получить рейт от redis
# bank.get_rate ‘USD’, ‘CAD’
класс VariableExchange < Base
attr_reader : мьютекс
# Доступные форматы для импорта/экспорта ставок.
RATE_FORMATS = [:json, :ruby, :yaml].freeze
SERIALIZER_SEPARATOR = ‘_TO_’.freeze
FORMAT_SERIALIZERS = {json: JSON, ruby: Marshal, yaml: YAML}. freeze
# Инициализирует новый объект +Money::Bank::VariableExchange+.
# По умолчанию используется экземпляр безопасного хранилища в памяти для
# хранение курсов валют.
#
# @param [RateStore] st Хранилище обменных курсов, используемое для сохранения пар обменных курсов.
# @yield [n] Необязательный блок для использования при округлении после замены единицы
# валюта для другого. См. +Money::bank::base+
def initialize(st = Money::RatesStore::Memory. new, &block)
@магазин = ст
супер(&блок)
конец
деф магазин
@store.is_a?(строка) ? Object.const_get(@store): @store
конец
по умолчанию marshal_dump
[store.marshal_dump, @rounding_method]
конец
деф marshal_load(обр)
store_info = обр[0]
@store = store_info. shift.new(*store_info)
@метод_округления = обр[1]
конец
# Обмен данного объекта +Money+ на новый объект +Money+ в
# +к_валюте+.
#
# @param [Деньги] из
# Объект +Money+ для обмена.
# @param [Валюта, Строка, Символ] to_currency
# Валюта для обмена.
#
# @yield [n] Необязательный блок для использования при округлении после замены единицы
# валюта для другого.
# @yieldparam [Float] n Полученный поплавок после обмена одной валюты
# для другого.
# @yieldreturn [Целое число]
#
# @return [Деньги]
#
# @raise +Money::Bank::UnknownRate+, если коэффициент конверсии неизвестен.
#
# @пример
# банк = Money::Bank::VariableExchange.new
# bank. add_rate(«USD», «CAD», 1.24515)
# bank.add_rate(«CAD», «USD», 0.803115)
#
# c1 = Money.new(100_00, «USD»)
# c2 = Money.new(100_00, «CAD»)
#
# # Обмен 100 долларов США на канадские доллары:
# bank.exchange_with(c1, «CAD») #=> #<Дробная часть денег:12451 валюта:CAD>
#
# # Обмен 100 канадских долларов на доллары США:
# bank. exchange_with(c2, «USD») #=> #<Дробная часть денег:8031 валюта:USD>
def exchange_with(от, to_currency, &block)
to_currency = Currency.wrap(to_currency)
, если from.currency == to_currency
из
еще
, если курс = get_rate(from.currency, to_currency)
дробное = рассчитать_дробное (от, до_валюты)
из.dup_with(
дробный: обмен(дробный, курс, блок),
валюта: to_currency,
банк: сам
)
еще
поднять UnknownRate, «Коэффициент конверсии для ‘#{from. currency.iso_code}’ -> ‘#{to_currency}'» неизвестен»
конец
конец
конец
def calculate_fractional (от, до_валюты)
BigDecimal(от.дробного.до_s) / (
BigDecimal(from.currency.subunit_to_unit.to_s) /
BigDecimal(to_currency.subunit_to_unit.to_s)
)
конец
обмен по умолчанию (дробный, курс, блок)
ex = дробное * BigDecimal(rate. to_s)
, если block_given?
Выход

по сравнению с
Эльзиф @rounding_method
@rounding_method.call(ex)
еще
бывший
конец
конец
# Регистрирует коэффициент конверсии и возвращает его (использует +#set_rate+).
# Делегаты +Money::RatesStore::Memory+
#
# @param [Currency, String, Symbol] from Валюта для обмена.
# @param [Currency, String, Symbol] to Валюта для обмена.
# @param [Числовой] rate Курс, используемый при обмене валют.
#
# @return [Числовой]
#
# @пример
# банк = Money::Bank::VariableExchange.new
# bank.add_rate(«USD», «CAD», 1.24515)
# bank.add_rate(«CAD», «USD», 0.803115)
по определению add_rate(от, до, скорость)
set_rate(от, до, скорость)
конец
# Установить курс для данных валют.
# доступ.
# Делегаты +Money::RatesStore::Memory+
#
# @param [Currency, String, Symbol] from Валюта для обмена.
# @param [Currency, String, Symbol] to Валюта для обмена.
# @param [Числовой] rate Курс, используемый при обмене валют.
# @param [Hash] выбирает хэш Options для установки специальных параметров. Только обратная совместимость.
#
# @return [Числовой]
#
# @пример
# банк = Money::Bank::VariableExchange. new
# bank.set_rate(«USD», «CAD», 1.24515)
# bank.set_rate(«CAD», «USD», 0.803115)
по определению set_rate (от, до, ставка, опции = {})
store.add_rate(Currency.wrap(from).iso_code, Currency.wrap(to).iso_code, rate)
конец
# Получить курс для заданных валют.
# доступ к данным.
# Делегаты +Money::RatesStore::Memory+
#
# @param [Currency, String, Symbol] from Валюта для обмена.
# @param [Currency, String, Symbol] to Валюта для обмена.
# @param [Hash] выбирает хэш Options для установки специальных параметров. Только обратная совместимость.
#
# @return [Числовой]
#
# @пример
# банк = Money::Bank::VariableExchange.new
# bank.set_rate(«USD», «CAD», 1.24515)
# bank.set_rate(«CAD», «USD», 0.803115)
#
# bank. get_rate(«USD», «CAD») #=> 1.24515
# bank.get_rate(«CAD», «USD») #=> 0.803115
по определению get_rate (от, до, опции = {})
store.get_rate(Currency.wrap(from).iso_code, Currency.wrap(to).iso_code)
конец
# Вернуть известные ставки в виде строки в указанном формате. Если +файл+
# также запишет строку в указанный файл.
# Доступные форматы: +:json+, +:ruby+ и +:yaml+.
#
# @param [Symbol] format Формат запроса для результирующей строки.
# @param [String] файл Необязательное расположение файла для записи ставок.
# @param [Hash] выбирает хэш Options для установки специальных параметров. Только обратная совместимость.
#
# @return [Строка]
#
# @raise +Money::Bank::UnknownRateFormat+, если формат неизвестен.
#
# @пример
# банк = Money::Bank::VariableExchange.new
# bank. set_rate(«USD», «CAD», 1.24515)
# bank.set_rate(«CAD», «USD», 0.803115)
#
# s = банк.export_rates(:json)
# s #=> «{\»USD_TO_CAD\»:1,24515,\»CAD_TO_USD\»:0,803115}»
def export_rates (формат, файл = ноль, опции = {})
поднять Money::Bank::UnknownRateFormat если RATE_FORMATS.include?(format)
магазин.транзакция до
s = FORMAT_SERIALIZERS[format].dump(rates)
, если только файл . nil?
File.open(файл, «w») {|f| f.write(s) }
конец
с
конец
конец
# Это должно быть объявлено устаревшим.
по умолчанию
store.each_rate.each_with_object({}) делать |(от,до,рейт),хэш|
хэш[[от, до].join(SERIALIZER_SEPARATOR)] = скорость
конец
конец
# Загружает ставки, указанные в +s+, учитывая указанный формат. Доступно
# форматы: +:json+, +:ruby+ и +:yaml+.
# Делегаты +Money::RatesStore::Memory+
#
# @param [символ] формат Формат +s+.
# @param [String] s Строка ставок.
# @param [Hash] выбирает хэш Options для установки специальных параметров. Только обратная совместимость.
#
# @return [себя]
#
# @raise +Money::Bank::UnknownRateFormat+, если формат неизвестен.
# @пример
# s = «{\»USD_TO_CAD\»:1,24515,\»CAD_TO_USD\»:0,803115}»
# банк = Money::Bank::VariableExchange.new
# bank.import_rates(:json, s)
#
# bank.get_rate(«USD», «CAD») #=> 1.24515
# bank.get_rate(«CAD», «USD») #=> 0.803115
по умолчанию import_rates (формат, с, опции = {})
поднять Money::Bank::UnknownRateFormat если RATE_FORMATS. include?(format)
, если формат == :ruby
warn ‘[ВНИМАНИЕ] Использование формата :ruby при импорте ставок потенциально небезопасно и ‘ \
‘может привести к удаленному выполнению кода через десериализатор Marshal.load. Рассмотрите возможность использования ‘\
‘безопасные альтернативы, такие как: json и: yaml.’
конец
магазин.транзакция до
данные = FORMAT_SERIALIZERS[format]. load(s)
data.each do |key, rate|
от, до = key.split(SERIALIZER_SEPARATOR)
store.add_rate от, до, скорость
конец
конец
сам
конец
конец
конец
конец

Конвертировать 1 RB в доллары США (королевские BNB в доллары США)

    org/BreadcrumbList»>

  1. Конвертировать
    /

  2. РБ в доллары

🔥 Присоединяйтесь к нашему Telegram

Купить Королевский BNB

рб


$
доллар США

  1. $
    Доллар США


  2. Индийская рупия


  3. Евро

  4. £
    Фунт стерлингов

  5. $
    Австралийский доллар

  6. $
    Канадский доллар


Конвертировать на Binance

#Охотник за бонусами | Получите их все 💰

долларов США

Дата

1 РБ в

долларов США

Сдача за 1 РБ

1 РБ в Сдача за 1 РБ Изменение %

\ Топ криптовалют

Имя Цена 24ч%

Биткойн

Биткойн

00″> 25 805,00 $ -0,48%

Эфириум

Эфириум

1734,25 $ -1,15%

Трос

USDT

$0,10000 -0,02%

БНБ

БНБ

230,03 $ -2,67%

USD Монета

USDC

0,9992 $ +0,03%
НОВЫЙ [В] КРИПТО?
МЫ ОБЕСПЕЧИМ ВАС!

Основы биткойнов

NFT

Торговля

Инвестирование

Узнать больше

Вторичная стрелка

Популярные конвертации Royal BNB

Королевский BNB на долларов США
1 рубль равен 0 долларов США

долларов США

Королевских BNB до индийских рупий
1 рубль равен 0 ₹

индийских рупий.

Королевский BNB на евро
1 рубль равен 0 евро

евро

Royal BNB на фунтов стерлингов
1 рубль равен 0 фунтам стерлингов 9 фунтам стерлингов1428

Royal BNB в австралийских долларах
1 РБ равен 0 австралийских долларов

австралийских долларов.

Королевский BNB в канадских долларах
1 РБ равен 0 CAD 

.

Королевский БНБ

$
Доллар США
1 0,000000005969
5,00 0,00000002984
10.00 0,00000005969
50,00 0,0000002984
100,00 0,0000005969
250,00 0,000001492
500,00 0,000002984
1 000,00 0,000005969
$
Доллар США

Королевский БНБ

1 167 532 249,96
5,00 837 661 249,79
10. 00 1 675 322 499,58
50,00 8 376 612 497,91
100,00 16 753 224 995,81
250,00 41 883 062 489,53
500,00 83 766 124 979,06
1 000,00 167 532 249 958,12
Крипто USD INR EUR GBP AUD CAD

Биткойн

Биткойн

25805 2111075,17 23450,79 20668,18 39120,38 35194,8 900 06

Эфириум

Эфириум

1734.25 141876,85 1576,04 1389,03 2629. 13 2365,31

Трос

USDT

1 81,81 0,91 0,81 1,52 1,37

БНБ

БНБ

230,03 18818,48 209,05 184,24 348,73 313,74

USD Монета

USDC

1 81,75 0,91 0,81 1,52 1,37

XRP

XRP

0,52 42,37 0,48 0,42 0,79 0,71

Лидо Стейк Эфир

СТЕТ

1732.