수색…


피보나치 수를 계산하십시오.

대부분의 언어와 마찬가지로 Visual Basic.NET은 재귀를 허용합니다.이 재귀는 특정 조건에서 함수가 자신 을 호출하는 프로세스입니다.

다음은 Visual Basic .NET에서 피보나치 수를 계산하는 기본 함수입니다.

''' <summary>
''' Gets the n'th Fibonacci number
''' </summary>
''' <param name="n">The 1-indexed ordinal number of the Fibonacci sequence that you wish to receive. Precondition: Must be greater than or equal to 1.</param>
''' <returns>The nth Fibonacci number. Throws an exception if a precondition is violated.</returns>
Public Shared Function Fibonacci(ByVal n as Integer) as Integer
    If n<1
        Throw New ArgumentOutOfRangeException("n must be greater than or equal to one.")
    End If
    If (n=1) or (n=2)
        ''Base case. The first two Fibonacci numbers (n=1 and n=2) are both 1, by definition.
        Return 1
    End If
    ''Recursive case.
    ''Get the two previous Fibonacci numbers via recursion, add them together, and return the result.
    Return Fibonacci(n-1) + Fibonacci(n-2)
End Function

이 함수는 먼저 매개 변수 n1 또는 2 함수가 호출되었는지 확인하여 작동합니다. 정의에 따르면 피보나치 시퀀스의 처음 두 값은 1과 1이므로이를 결정하는 데 더 이상의 계산이 필요하지 않습니다. n 이 2보다 크면 관련 값을 쉽게 찾을 수는 없지만 피보나치 수는 이전 두 숫자의 합과 같습니다. 따라서 재귀 (피보나치 함수를 호출)를 통해 피보나치 수를 요청합니다. 연속적인 재귀 호출은 -1과 -2의 감소를 통해 더 작은 숫자와 작은 숫자로 호출되기 때문에 결과적으로 2보다 작은 숫자에 도달하게됩니다. 기본 조건이라고하는 조건에 도달하면 스택이 풀리고 우리는 우리 최종 결과를 얻으세요.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow