logo
logo
Почему же, (+) [Dervish 14/07/2004 01:11]
... не расчитываются? Расчитываются. Давайте на примере, я попробую объяснить те цифры, которые вы видите.
 
Загружаем курсы на начало июля месяца, выбираем из списка валют USD и EUR. Программа записывает в базу данных три курса (их потом можно посмотреть):
 
1. 29.0471 RUR за 1 USD;
2. 35.0889 RUR за 1 EUR и
3. 35.0889 USD за 29.0471 EUR.
 
Вас смутило то, что в третьем курсе мы видим до боли знакомые числа? Но ведь они правильные! Попробуйте разделить оба числа на меньшее и вы получите, что
1 EUR стоит 1.2080 USD, что соответствует действительности.
 
Другой вопрос состоит в том, что я действительно не стал реализовывать это деление в самой программе. Почему? С одной стороны, при этом делении неизбежно будут ошибки округления. С другой стороны, непонятно, на какое из этих двух значений надо их делить. Скажете, на меньшее? Но это не всегда будет правильно, поскольку некоторые валюты номинируются не к единице (например, японские йены).
 
С другой стороны, попробуйте пересчитать остаток по какому-нибудь долларовому счёту в евро и вы увидите, что программа будет показывать правильные результаты.