2013-10-28 3 views
1

현재 코드 워즈 교육을하고 있고 n 번째 삼각 테스트에 문제가 있습니다.루비, n 번째 삼각 수를 반환하고 범위 값을 벗어나는 경우 0을 반환합니다.

당신은 n 번째 삼각수를 반환해야합니다 여기

질문입니다. 범위를 벗어나는 값은 0을 반환해야하지만 항상 숫자가 전달됩니다.

n이 1, 2 및 3 값만 전달되는 경우 (현재 테스트를 통과하는 데 필요한 모든 것)는 다음과 같습니다. 누군가가 친절이 심지어는 좋은 것 요구하고 무엇을 설명 할 수있는 경우

Expected: 0; instead got: 10 

것은없는 것 : 나는 오류가 제외

# Return the nth triangular number 
def triangular(n) 
n * (n + 1)/2 
end 

나는 통과 시험의 대부분을 얻기 위해 계속 이 문제를 설명하는 온라인 자료를 찾으십시오.

+1

'n = 4'이 (가) 범위를 벗어 납니까? – AGS

+0

"삼각형 번호"가 [여기] (http://en.wikipedia.org/wiki/Triangular_number)에 설명 된 것과 같으면 코드가 정확합니다. 나는 '요구'를 (즉, 'n'= 1,2,3) 확인하기 위해 작성된 '어설트'를 추측하고 오류를 피하기 위해 다른 값인 'n'에 대해 '0'을 리턴했다. –

답변

1

수식이 유효하므로 범위를 벗어난 숫자와 관련이 있어야합니다. "0 대신에"10을 얻은 경우, 입력 데이터는 -5 * -4/2 = 10이되는 "-5"의 경우를 가질 수 있습니다. 물론 "-5"에 대한 응답이 없어야합니다. 따라서 기대는 0입니다.