En esta página, construirás un bloque factorial recursivo y varios bloques recursivos que manejen cadenas.
factorial
bloque usando un reportero recursivo.A menudo, los comandos recursivos tienen una estructura como esta, con múltiples comandos en el caso recursivo:
árbol
es un buen ejemplo; llamamos árbol
dos veces desde dentro de una sola llamada a árbol
).
Los reporteros recursivos tienen una estructura diferente porque pueden reportar solo un valor. Porque el bloque reportar
reporta una respuesta, deberás crear la respuesta antes o dentro de la llamada de bloque reportar
. Por eso, esto no es posible:
reportar
.Los programas de procesamiento de textos cuentan el número de palabras y letras en los documentos. Una forma de contar el número de letras en una frase es usar un reportero recursivo.
conteo de letras
que tome una lista de palabras como entrada y reporte el total número de letras en todas las palabras. El bloque todas menos la primera letra
puede ser útil, pero hay más de una manera de hacer esto.unir palabras
. Este bloque ingresa una lista y genera una oración de cadena, con espacios:Las operaciones de lista todas menos la primera letra
y delante de
se usan con frecuencia en reporteros recursivos.
plurales
, luego describe cómo funciona. (Ya has construido una más simple versión de plurales
usando mapear
; queremos que veas que el mismo problema puede ser resuelto de múltiples maneras.)