Кузман обнови решението на 08.10.2015 01:08 (преди около 9 години)
+def convert_to_bgn(amount, currency)
+ if currency.eql? :gbp
+ (amount*2.6415).round(2)
+ elsif currency.eql? :usd
+ (amount*1.7408).round(2)
+ elsif currency.eql? :eur
+ (amount*1.9557).round(2)
+ else
+ amount
+ end
+end
+
+def compare_prices(price_a, currency_a, price_b, currency_b)
+ convert_to_bgn(price_a, currency_a) - convert_to_bgn(price_b, currency_b)
+end
Можеш и по-добре с convert_to_bgn
. Тоест:
- всичко се повтаря :/ можеш да запазиш обменния курс в променлива и тн..
-
eql?
? използвай==
ако ще правиш такива неща.eql?
се използва за да се провери дали две неща са един същи ключ за Hash, което ме подсеща погледни какво е Hash (даже го използвай ;)). - не закръгляш bgn
compare_prices
изглежда добре, може да използваш <=>
, но и така става