gpt4 book ai didi

ruby - Ruby 中的条件

转载 作者:太空宇宙 更新时间:2023-11-03 18:14:27 24 4
gpt4 key购买 nike

当我将值 75 传递给我的程序时,为什么它会打印出“没有数字”? 75 小于 100 且大于 50。它应该打印出“range: 50 - 100”。

def report_back(value) 
case value
when (value < 100) && (value > 50)
message = 'number range: 50 - 100'
else
message = 'no number'
end
return message
end

puts 'enter a number between 0 - 100:'
number = gets.chomp.to_i

puts report_back(number)

最佳答案

您选择这样组织您的答案有什么原因吗?你可以很容易地把它写成这样:

def report_back(value)
value < 100 && value > 50 ? message = 'number range: 50 - 100' : message = 'not'
puts message
end

number = gets.chomp.to_i
report_back(75)

当有超过 3 个选项时,您通常使用 case。在这里,简单的 if...else 可能是更好的选择,因为实际上只有 2 个选项。我在这里选择使用三元运算符,但 ?..:if...else 相同。

一些技术要点

  • 不需要return语句; Ruby 具有隐式返回,因此 return 关键字不是必需的。
  • 通常不鼓励在函数外使用puts 返回数据;最好使用 puts inside ie: 在这里代替 return 关键字

希望对您有所帮助。您有了一个良好的开端 - 您很快就会得到它!

关于ruby - Ruby 中的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28435850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com