सभी उदाहरण

उदाहरण

¿Qué imprime esta función recursiva?

स्पैनिश में समझाया गया रिकर्शन: f(4) को कॉल-दर-कॉल बेस केस तक खोला गया, फिर वापस गुणा करते हुए 24 तक।

  • 1:39
  • कोड के सवाल
  • Erinome की आवाज़ में
  • स्पेनिश

प्रॉम्प्ट से बना

¿Qué imprime este código? def f(n): return 1 if n == 0 else n * f(n - 1) print(f(4))

वीडियो की ट्रांसक्रिप्ट

En este video, seguimos una función recursiva para descubrir qué imprime.

Pregunta número uno. ¿Qué imprime este código?

Se define f con el parámetro n. La instrucción return usa if para comprobar si n es igual a cero. Si se cumple, devuelve uno; con else, devuelve n multiplicado por f de n menos uno.

print llama a f con cuatro y muestra el resultado. Como cuatro no es cero, f de cuatro queda como cuatro por f de tres.

Ahora n vale tres, así que f de tres queda como tres por f de dos.

Ahora n vale dos, así que f de dos queda como dos por f de uno.

Ahora n vale uno, así que f de uno queda como uno por f de cero.

Cuando n vale cero, f de cero devuelve uno.

Este es el caso base: detiene las llamadas recursivas. Volvemos hacia atrás: f de uno es uno por uno, que da uno.

Después, f de dos es dos por uno, que da dos.

Luego, f de tres es tres por dos, que da seis.

Finalmente, f de cuatro es cuatro por seis, que da veinticuatro.

Comprobamos: cuatro por tres por dos por uno es el factorial de cuatro. Por lo tanto, el código imprime veinticuatro.

आपका टॉपिक, करीब एक मिनट में बनकर तैयार।

आपके पहले 2 वीडियो फ़्री हैं, हर वीडियो 1 मिनट तक का, वॉटरमार्क के साथ। कार्ड की ज़रूरत नहीं। पूरा प्रोडक्ट, हर आवाज़ और हर स्टाइल समेत।