Diseño de algoritmos de Python - McCarthy 91

1. ¿Qué es McCarthy 91?

McCarthy 91 es una expresión de función recursiva. La siguiente

inserte la descripción de la imagen aquí
función significa que cuando se ingresa un número n mayor que 100, se devuelve n-10, y cuando se ingresa un número n menor o igual a 101, n se opera recursivamente, pero el el resultado es siempre 91.

Dos, ¿de qué sirve?

La función de esta función es servir como un ejemplo para que los estudiantes aprendan cómo probar una cierta norma o patrón (o aprender una idea de prueba), en lugar de permitirles realmente probar si f(5) es igual a 91

3. Implementación del algoritmo de Python


#第一种设置变量写法
def mccarthy91(n):     
  k = 1
  while k:
    if n > 100:
      n -= 10
      k -= 1
    else:
      n += 11
      k += 1
  return n
# 第二种递归写法
def mccarthy91_rec(n):
  if n > 100:
    return n - 10
  else:
    return mccarthy91_rec(mccarthy91_rec(n + 11))


print(mccarthy91_rec(50))

Nota : Las dos funciones anteriores se pueden escribir, pero se recomienda utilizar el segundo

resultado de salida
inserte la descripción de la imagen aquí

Como se muestra, sin importar qué función se use, para n menor o igual a 101, el resultado es 91

4. Información del autor

Autor: La rutina de pesca de Xiaohong, Objetivo: ¡Hacer que la programación sea más interesante!

Concéntrese en algoritmos, reptiles, desarrollo de juegos, análisis de datos, procesamiento de lenguaje natural, IA, etc., esperando su atención, ¡permítanos crecer y codificar juntos!

Nota de derechos de autor: ¡Este artículo prohíbe el plagio y la reimpresión, y la infracción debe investigarse!

Supongo que te gusta

Origin blog.csdn.net/qq_44000141/article/details/130209047
Recomendado
Clasificación