我是编码的新手,因此建议尝试Ruby。 有一个针对实习的实践测试,要求编写一个返回反向的函数,而无需使用内置的反向函数。 我尝试了多种不同的解决方案,从youtube / stack溢出以及一些中等的博客帖子中我遵循了这些解决方案,所有这些解决方案都返回“不确定”
谁能解释我编写的代码有什么问题,以及它与测试所期望的有何不同?
我已经尝试过以下代码。
def string_reverse(input)
split_string = string.split("")
reversed = []
string.size.times { reversed << split_string.pop }
reversed.join
end
puts string_reverse("Hello")
这是测试窗口中的内容:
require './solution'
require 'minitest/autorun'
class TestSolution < MiniTest::Unit::TestCase
def test_1
assert_equal "olleH", string_reverse("Hello")
end
def test_2
assert_equal "A", string_reverse("A")
end
def test_3
assert_equal "", string_reverse("")
end
end
这是输出窗口中的内容:
/sandboxes/hyena/solution.rb:2:in `string_reverse': undefined local variable or method `string' for main:Object (NameError)
Did you mean? String
from /sandboxes/hyena/solution.rb:8:in `<top (required)>'
from /usr/local/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from test_solution.rb:1:in `<main>'