루비 코스의 숙제 문제를 해결하기 위해 노력하고 있습니다. 나는 몇 가지 코드를 함께 의아해Ruby : 문자열을 뒤집어 쓰는 Proc
describe "reverser" do
it "reverses the string returned by the default block" do
result = reverser do
"hello"
end
result.should == "olleh"
end
it "reverses each word in the string returned by the default block" do
result = reverser do
"hello dolly"
end
result.should == "olleh yllod"
end
end
나는 이러한 조건을 만족한다고 생각 : 기본적으로 나는이 조건을 만족시킬 수있는 프로그램을 구축 할 필요가 내가 레이크를 실행할 때 그러나
reverser = Proc.new do |string|
words = string.split(/\b/)
answer = ''
i = 0
while i < words.count
answer = answer + words[i].reverse
i += 1
end
answer
end
def reverser
yield
end
을 내 오류가 말한다 나 첫번째 조건에 실패했다.
expected: "olleh"
got: "hello"
내가 빠진 것이 있나요? 나는 프록을 제대로 이해하지 못했습니까?
이 질문은 pete라는 회원이 어떤 형태로든 질문을하고 mind.blank라는 다른 사용자가 아주 잘 답변 해주었습니다. 출처 :
Beginner RSpec: Need help writing Ruby code to pass RSpec tests (Silly Blocks exercise).
mind.blank의 코드는 간단하고 올바르게 작동했지만, 왜 광산이 작동하지 않는지 이해하지 않고 복사하고 싶지는 않습니다. 모든 도움을 미리 감사드립니다.
지속 같은 방법으로 주어진 문자열을 반전 할 것이다. 네가 옳아. – prater
팁 주셔서 감사. 그 대답은 다른 스레드의 남자가 게시 한 것입니다. 이유를 모른 채 코드를 훔치기를 원하지 않았습니다. 그러나 나는 그것을 조금 더 이해하고있다. – zethsaber