Мария обнови решението на 08.10.2015 02:12 (преди около 9 години)
+def convert_to_bgn(price, currency)
+ price_in_bgn = case currency
+ when :bgn then price
+ when :usd then price * 1.7408
+ when :eur then price * 1.9557
+ when :gbp then price * 2.6415
+ end
+ price_in_bgn.round(2)
+end
+
+def compare_prices(price_1, currency_1, price_2, currency_2)
+ convert_to_bgn(price_1, currency_1) <=> convert_to_bgn(price_2, currency_2)
+end
Изглежда добре, но може да въведеш концепцията за обменен курс с някаква променлива, че така числата са някакви хвърчащи. Погледни за Hash-ове, ще стане по-кратко от case-а.