|
La fabuleuse fonction d'«Ackermann» de 1926, laquelle, lorsqu'on met des chiffres de plus en plus gros dans le premier paramètre, augmente beaucoup plus vite que l'exponentiel !
Sa formule est cité dans presque tous les livres de récursivité, mais paradoxalement, son nom, Wilhelm Ackermann, est difficile à trouver !
Voici un code source C effectuant le calcul de la fonction d'«Ackermann» dans ses positions inférieures :
<script language="JavaScript" type="text/javascript">
function Ackermann(M,N) {
if(M == 0) return N+1;
else {
if(N == 0) return Ackermann(M-1,1);
else return Ackermann(M-1,(Ackermann(M,N-1)));
}
}
var I,J;
for(I=1;I<=2;I++) for(J=1;J<=10;J++) {
document.write("Ackermann(" + I +"," + J + ")=" + Ackermann(I,J) + "<br />");
}
</script>
|
on obtiendra le résultat suivant :
Ackermann( 1, 1)= 3
Ackermann( 1, 2)= 4
Ackermann( 1, 3)= 5
Ackermann( 1, 4)= 6
Ackermann( 1, 5)= 7
Ackermann( 1, 6)= 8
Ackermann( 1, 7)= 9
Ackermann( 1, 8)= 10
Ackermann( 1, 9)= 11
Ackermann( 1, 10)= 12
Ackermann( 2, 1)= 5
Ackermann( 2, 2)= 7
Ackermann( 2, 3)= 9
Ackermann( 2, 4)= 11
Ackermann( 2, 5)= 13
Ackermann( 2, 6)= 15
Ackermann( 2, 7)= 17
Ackermann( 2, 8)= 19
Ackermann( 2, 9)= 21
Ackermann( 2, 10)= 23
|
Voir également
Science - Mathématique
|