Решение на Първа задача от Ивайло Чернев

Обратно към всички решения

Към профила на Ивайло Чернев

Резултати

  • 6 точки от тестове
  • 0 бонус точки
  • 6 точки общо
  • 8 успешни тест(а)
  • 0 неуспешни тест(а)

Код

def convert_to_bgn(price, currency)
currencies = { :bgn => 1.00, :usd => 1.7408, :eur => 1.9557, :gbp => 2.6415 }
factor = currencies[currency]
new_price = price * factor
new_price.round(2)
end
def compare_prices(price_one, currency_one, price_two, currency_two)
price_one_in_bgn = convert_to_bgn(price_one, currency_one)
price_two_in_bgn = convert_to_bgn(price_two, currency_two)
price_one_in_bgn <=> price_two_in_bgn
end

Лог от изпълнението

........

Finished in 0.00638 seconds
8 examples, 0 failures

История (2 версии и 2 коментара)

Ивайло обнови решението на 11.10.2015 01:08 (преди над 8 години)

+def convert_to_bgn(price, currency)
+ currencies = { :bgn => 1.00, :usd => 1.7408, :eur => 1.9557, :gbp => 2.6415 }
+ factor = currencies[currency]
+ new_price = price * factor
+ ("%g" % ('%.2f' % new_price)).to_f
+end
+
+def compare_prices(price_one, currency_one, price_two, currency_two)
+ price_one_in_bgn = convert_to_bgn(price_one, currency_one)
+ price_two_in_bgn = convert_to_bgn(price_two, currency_two)
+ price_one_in_bgn <=> price_two_in_bgn
+end

Ивайло обнови решението на 11.10.2015 01:12 (преди над 8 години)

def convert_to_bgn(price, currency)
currencies = { :bgn => 1.00, :usd => 1.7408, :eur => 1.9557, :gbp => 2.6415 }
factor = currencies[currency]
new_price = price * factor
- ("%g" % ('%.2f' % new_price)).to_f
+ new_price.round(2)
end
def compare_prices(price_one, currency_one, price_two, currency_two)
price_one_in_bgn = convert_to_bgn(price_one, currency_one)
price_two_in_bgn = convert_to_bgn(price_two, currency_two)
price_one_in_bgn <=> price_two_in_bgn
end

Разбирам, попринцип го направих така, за да не е на един дълъг ред. Понеже на работа нямам Руби среда, не мога да тествам нищо. Ще ми бъдат ли отнети точки за горе-посочените забележки, тоест да се мъча ли сега да го оправям.