Ejemplos de Recursion En [Scheme / DrRacket]

En scheme por recursion se entiende al hecho de crear una función, que dentro de si misma se llame. esto genera un ciclo en el cual se repite indefinidamente hasta alcanzar el punto de parada.

Entender el concepto de recursion es importante a la hora de programar en cualquier lenguaje esto dado que es extremadamente útil a la hora de resolver un problema que requiera repetir n veces una ecuación.


Recursividad en programación

Multiplicar con recursion en DrRacket


Multiplicar dos números sin utilizar el operador *
Ejemplo: 21 * 3 = 21 + 21 + 21 = 63

Código:



; ===========================================================================
; Autor: Jorge isaac peña caceres
; Fecha: 01/10/2018
;----------------------------------------------------------------------------
;contrato: multiplicacion: numero, numero -> numero
;descripcion: la funcion recibe dos numeros y suma b veces a

(define (multiplicar a b)
  (cond
    [(= b 0) 0]
    [else
     (+ a (multiplicar a (- b 1)))]
))

;prueba
(multiplicar 2 10)
;retorna 20....
; ===========================================================================

Elevar una potencia con recursion en DrRacket


Calcular una base elevada a una potencia sin usar el operador: EXPT
2^3 = 2*2*2 = 8
6^4 = 6*6*6*6 = 1296

Código:


; ===========================================================================
; Autor: Jorge isaac peña caceres
; Fecha: 01/10/2018
;contrato: elevar: numero, numero -> numero
;descripcion: la funcion recibe a y b y retorna el resultado de multiplicar
;             b veces a
;----------------------------------------------------------------------------
(define (elevar x y)
  (cond
    [(= y 0) 0]
    [(= y 1) x]
    
    [else
     (* x (elevar x (- y 1)))]
))

;prueba
(elevar 4 5)
;retorna 1024....
; ===========================================================================


Llamar una función no es exclusivo de solo usar en si misma también se puede tomar como una Función auxiliar para usarse en otra, si te interesa ver un ejemplo mira: Ecuación de segundo grado con función auxiliar.

Tomas de pantalla

recursion elevar scheme - DrRacket


recursion mutiplicar scheme - DrRacket

Compartir en facebook twitter Google tumblr pinterest

Entradas similares

0 Comentarios