Questo esempio di codice Scheme mostra come implementare esponenti innalzando una data base da un dato esponente attraverso una quadratura di successo.
Data la base B e l'esponente n, il codice determina se l'esponente è zero, nel qual caso ne restituisce uno. Altrimenti, determina se n è pari e può essere diviso per due o se è necessario eseguire prima un adattamento dispari.
(definire (exp b n)
(cond ((= n 0) 1); 0 caso base
((= n 1) b); 1 caso base
((even? n) (exp (quadrato b) (/ n 2))); anche case usando (b ^ 2) ^ n / 2
(altrimenti (* b (exp b (+ n -1))))); caso dispari usando b * b ^ n-1
)
Domande / commenti: [protetto da email]
-William. § (marvin_gohan)