Fonction d'ackerman

Contenu du snippet

La fonction d'ackerman est une fonction mathématique.
C'est la fonction qui croit le plus rapidement, bien plus rapidement qu'une expontielle.
Par exemple : ackerman(4,4) > 10^80
pourtant l'algo fait simplement quelques lignes :

la fonction A : (m, n) |--> A(m, n) d'Ackerman est définie sur N × N par :
Si m = 0, alors A(0, n) = n+1,
sinon si n=0, A(m, 0) = A(m-1, 1)
sinon(A(m, n) = A(m - 1, A(m, n - 1)))

Source / Exemple :


Private Function ackerman(ByVal m As Long, ByVal n As Long)
        If m = 0 Then
            Return n + 1
        ElseIf n = 0 Then
            Return ackerman(m - 1, 1)
        Else
            Return ackerman(m - 1, ackerman(m, n - 1))
        End If
    End Function

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.