0
내가 오류를 얻고있다
요구하는 시험 범위 오류내부 오류 : 많은 수의
def perfect_square(i)
a = Math.sqrt(5*(i**2)+4)
b = Math.sqrt(5*(i**2)-4)
ac = a.ceil
bc = b.ceil
if a**2 == ac**2 || b**2 == bc**2
true
else
false
end
end
puts perfect_square(927372692193078999171)
내가 오류를 가정하고 있기 때문에이 예 i
에 정말 큰 숫자이며 따라서 메서드가 처리 할 수없는 것입니다? 내 모든 다른 테스트 (아래)가 사실로 돌아오고 있으므로 왜 위의 테스트가 작동하지 않는지 잘 모르겠습니다.
perfect_square(2) #=> true
perfect_square(10946) #=> true
perfect_square(6765+100) #=> false
해당 번호로 프로그램을 실행하면 오류가 발생하지 않습니다. 그리고'is_fibonacci? '예제는 무엇입니까? – lurker
'is_fibonacci?'라는게 뭐지? 질문 끝나고 코멘트없이 던져 준 전화? :) 아마도 호출 스택 오류가 발생합니다. – Matt
'is_fibonacci? '라고 쓰셨습니까? 재귀 구현을 사용 했습니까? 당신은 당신의 구현으로 스택을 날려 버렸다. –