【发布时间】:2020-08-02 10:12:00
【问题描述】:
我应该如何用 Ruby 编写这个?
- 一本书是 35.00 美元
- 4 本书一册,售价 112.00 美元(因此,如果有人购买 9 本书,则需要 259 美元)。
这是我可以写的:
book_price = 35.00 * quantity
if quantity == 4
book_price = 112.00
elsif quantity > 4
book_price = (quantity / 4) * 112.00
book_price += (quantity % 4) * 35.00
end
puts "you spend a total of $#{book_price} on books.
【问题讨论】:
-
你应该选择更好的变量名。我假设
user_input实际上是quantity。在任何语言中,您都可以将书籍的数量除以 4,然后将结果乘以 112。将总书籍数量除以 4 后的余数乘以 35,然后将这两个操作相加。total_price = (user_input/4)*112.00 + (user_input % 4)*35.00. -
您好,您能简单介绍一下吗?您是否要达到
flat discount并且user_input是否意味着数量? -
欢迎来到 SO!这有一种家庭作业的味道:“How do I ask and answer homework questions?”。您的代码没有做什么您希望它做的事情?请参阅“How to Ask”、“Stack Overflow question checklist”和“MCVE”及其所有链接页面,了解有关如何改进您的问题的更多信息。
-
在您当前的实现中,没有理由使用
if语句。即使quantity等于4,if的else部分也会计算正确的价格。
标签: ruby if-statement module conditional-statements