Fonction d'Ackermann
Le cadre
La fonction d'Ackermann-Péter est définie récursivement comme suit :
\[A(m, n) = \begin{cases}
n + 1 & \text{ si } m = 0\\
A(m-1, 1)& \text{ si } m > 0 \text{ et } n = 0\\
A(m-1, A(m, n-1))& \text{ si } m > 0 \text{ et } n > 0\\
\end{cases}\]
Exercice
Coder une fonction récursive ackermann en Python.
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
.128013,5/f7rnb o=ylaepcwgu)vd4613kmhtsP(S0+2-i:050x0p0F0o0O0n0G0j0r0n0o0G0G0l010F0O0q010406050G0u0D0D0o0g0m040J0k0n0u0*0k0h050d0;0?0^0`0/0q04051a131d0d1a0/0x0O0w0Y0!0$0(0E0O0t0E0n1r0E0F0-050T0i0n0p1m0#0%011q1s1u1s0F1A1C1y0F0g1b0F0E1E1o010e0V0p0h0o0D0p010Y0}0G0q0o0h0(0M1y1,1.1V1G1Y1C1#1%0-0a0j0H0g0k0q0k0G0O100h0j0R1*0g0g0p0r28131?0h1b0d1T2l1Q1S1R1z0x1^0(1u0h1!251y1j1l0Z1F2v0O2x0h0k2B1y0q2e1b2j2l2P0:1-292D1W2I0g0@0n0-0A2i2T0.2S1@2V1G2X2Z0-0M2%1.2)2j2u012.0o2!040B2=2k0/2^2,0(2{2}0y302@2T2_360-0c39323b342`0k2Y2|0-0z3g2*2U1n2-3l2/040f391e2N132B2o0x1S2t3j0r2J1(1b3D1c3B2R142(053J0R2O3i3t0(0C0-0R0e3z333Y010s0-0j3(3X2E2`0e0-0o0r0C0p3m0h123R2?3r2_0,040I3/2+3*0h0-0D463s3;430b393.3)3;49043~2R4j1W430v0P3g0j4v4i3:1W3!040O3%3 2k4x474k4a4h413j0k0-0l0l4K4p1G0D0O0-0K4c420-4t4E0.4w4(4G4d4z0-2e0F0u0g4n2(4*3c0-4=2?4@4M0-0L4R4y4T4V042$4$064(4L3*4A0p1u4D2P4|484_504H1W4N044P5j4+524W4Y3j434#2P574)4v593;4A4.4:4`4F5B2W3@3_3{0@3}5t3*43454$5I2-4J4$5g3;5m0N5p2_4U2#5P4e0-4g5X5U0(5(545*4q0-0v4u4w5/015b0W0p5?1G5v5`5z5|5D0S5F5$3j4l3^3`3|5G3W5k620-5S4o51355W5f5|5!6a3*5;556m6i0(4f6t4I046d5M1.6g5|5R616o044b5T4S6z5,6B5J4m6S1G6s5.6P016v6K014r5_56133U0p2l2M6-3C1k3E2o2r2m0o1B6:0d3D0/6}0S0U0W04.
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)