Подскажите как правильно вычислить значения?

есть небольшой обменик валют и вот такие курсы

1RUB = 0.0000681LTC
1LTC = 12263.639

когда меняем RUB на LTC

LTC = 0.0000681 * 1750 = 0.119175

когда меняем наоборот LTC на RUB

RUB = 0.143 * 12263.639 = 1753.70038RUB

!! Но если я меняю опять RUB на LTC:

LTC = 2100 * 0.0000681 = 0.143LTC получается когда идет обмен справа налево, то считается неверно

Как правильно высчитать если я меняю 0.143LTC на RUB

я думал тоже перемножить но идет потеря 400RUB


Ответы (1 шт):

Автор решения: Аркадий

Если я правильно понял:

Вы меняете

1) LTC->RUB: 0.143LTC * 12263.639 = 1753.70038RUB
2) RUB->LTC: 1753.70038RUB * 0.0000681 = 0.119427LTC

Получаете разницу

0.143LTC - 0.119427LTC = 0.023573LTC

При данных курсах все верно.

Чтобы обмен проходил без потерь, Вам нужны курсы, удовлетворяющие условию

КурсRUB * КурсLTC = 1

Пусть S_L - сумма в LTC, S_R - сумма в RUB.

При обмене туда-обратно имеем систему

S_L * КурсLTC = S_R;

S_R * КурсRUB = S_L.

Подставим

S_R * КурсRUB * КурсLTC = S_R

Разделим на S_R

КурсRUB * КурсLTC = 1

Таким образом, при данном курсе RUB

1RUB = 0.0000681LTC

нужен курс LTC

1LTC = 1 / 0.0000681 = 14684.287812RUB

Проверим:

1) LTC->RUB: 0.143LTC * 14684.287812 = 2099.853157RUB
2) RUB->LTC: 2099.853157RUB * 0.0000681 = 0.143LTC
→ Ссылка