Решение на Първа задача от Мария Османлиева

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

Към профила на Мария Османлиева

Резултати

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

Код

def convert_to_bgn (price,currency)
if currency==:usd
(price=price*1.7408).round(2)
elsif currency==:eur
(price=price*1.9557).round(2)
elsif currency==:gbp
(price=price*2.6415).round(2)
else
price.round(2)
end
end
def compare_prices(price_one,currency_one,price_two,currency_two)
(convert_to_bgn(price_one,currency_one)) -
(convert_to_bgn(price_two,currency_two))
end

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

........

Finished in 0.00659 seconds
8 examples, 0 failures

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

Мария обнови решението на 12.10.2015 17:17 (преди около 9 години)

+def convert_to_bgn (price,currency)
+ if currency==:usd
+ (price=price*1.7408).round(2)
+ elsif currency==:eur
+ (price=price*1.9557).round(2)
+ elsif currency==:gbp
+ (price=price*2.6415).round(2)
+ else
+ price.round(2)
+ end
+end
+
+#puts convert_to_bgn(1000, :usd) # => 1740.8
+#puts convert_to_bgn(32, :usd) # => 55.71
+
+def compare_prices(price_one,currency_one,price_two,currency_two)
+ (convert_to_bgn(price_one,currency_one)) -
+ (convert_to_bgn(price_two,currency_two))
+end
+
+#puts compare_prices(100, :usd, 100, :gbp)# => число, по-голямо от нула
  • Имаш твърде много скоби, повечето са излишни.
  • Слагай интервали около оператори (*, ==, = и т.н.) и след запетаи: price_one, currency_one, price_two, ...
  • Когато продължаваш един ред на следващ (17-ти на 18-ти), обикновено следващите редове се отместват едно ниво навътре спрямо първия ред, т.е.:

      foo +
        bar +
        baz
    
  • Не трябва да има интервал преди отварящата скоба на ред 1.

  • Не предавай решения с коментирани puts-ове вътре :)

Мария обнови решението на 12.10.2015 17:27 (преди около 9 години)

def convert_to_bgn (price,currency)
if currency==:usd
(price=price*1.7408).round(2)
elsif currency==:eur
(price=price*1.9557).round(2)
elsif currency==:gbp
(price=price*2.6415).round(2)
else
price.round(2)
end
end
-#puts convert_to_bgn(1000, :usd) # => 1740.8
-#puts convert_to_bgn(32, :usd) # => 55.71
-
def compare_prices(price_one,currency_one,price_two,currency_two)
(convert_to_bgn(price_one,currency_one)) -
(convert_to_bgn(price_two,currency_two))
-end
-
+end
-#puts compare_prices(100, :usd, 100, :gbp)# => число, по-голямо от нула