Este ejemplo de código de Esquema muestra cómo implementar exponentes elevando una base dada por un exponente dado a través de una cuadratura sucesiva.
Dada la base segundo y el exponente norte, el código determina si el exponente es cero, en cuyo caso devuelve uno. De lo contrario, determina si n es par y se puede dividir por dos o si primero se debe realizar una adaptación impar.
(definir (exp b n)
(cond ((= n 0) 1); 0 caso base
((= n 1) b); 1 caso base
((incluso? n) (exp (cuadrado b) (/ n 2))); incluso caso usando (b ^ 2) ^ n / 2
(else (* b (exp b (+ n -1))))); caso impar usando b * b ^ n-1
)
Preguntas / Comentarios: [correo electrónico protegido]
-William. § (marvin_gohan)