gpt4 book ai didi

ruby - 为什么我的回文检测器不工作(只返回一个输入)?

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

我正在尝试练习 Ruby,并且正在制作一个回文检测器。

我曾尝试将 else 更改为 elsif 但均无效。

print "Enter a Word and check if it's a Palindrome!"
word = gets.chomp
if word.reverse! == word
print "The word you entered was a Palindrome!"
else
print "The word is not a Palindrome!"
end

它只返回 “您输入的单词是回文!” 但它应该返回一个或另一个。

最佳答案

您需要删除爆炸 ! 因为 String#reverse!原地反转字符串,条件始终为真。

这是正在发生的事情:

word = "whathever"
word.reverse!
#=> "revehtahw"

word
#=> "revehtahw"

"revehtahw" == "revehtahw"
#=> true

这是你需要的:

word = "whathever"
word.reverse
#=> "revehtahw"

word
#=> "whathever"

"revehtahw" == "whathever"
#=> false

关于ruby - 为什么我的回文检测器不工作(只返回一个输入)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57021331/

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