miércoles, 11 de abril de 2012

Ejemplos de recursividad VB.NET


Bueno, estos ejemplos de código muy básicos son en VB.NET, la recursividad es un tema bastante importante en la programación, por lo que todo ingeniero debe conocer o al menos entender de que se trata, por eso quise hacer estos pequeños ejemplos simples para entender como funciona. Básicamente lo que hice fue crear una clase llamada recursividad y algunas funciones con parámetros por valor y cree un objeto en los formularios y los mande a llamar, pero eso se los dejo a ustedes yo solo voy a mencionar las funciones.

Primero que todo la recursividad es la capacidad que tienen algunos lenguajes de programación que permite a las funciones o procesos llamarse así mismos. 

El común de todos los ejemplos es el factorial de un número, recordemos que desde nuestra época en el colegio nos enseñaron que el factorial, por ejemplo, de 5! era 5*4*3*2*1. Si vemos es la multiplicación de  números secuenciales uno menor que el anterior. 


  • FACTORIAL UN NÚMERO

Public Function factorial(ByVal numero As Integer)
        If numero = 0 Then
            Return 1
        Else
            Return (numero * (factorial(numero - 1)))
        End If
    End Function

  • SUMA DE UN NÚMERO

 Public Function suma(ByVal numero As Integer)
        If numero = 0 Then
            Return 0
        Else
            Return (numero + suma(numero - 1))
        End If
    End Function



  • EXPONENTE 

Public Function exponente(ByVal num As Integer, ByVal exp As Integer)
        Dim resultado As Integer
        If exp = 0 Then
            resultado = 1
        Else
            resultado = (num * exponente(num, exp - 1))
        End If
        Return resultado
    End Function

  • MÁXIMO COMÚN DIVISOR

    Public Function MaxCD(ByVal a As Integer, ByVal b As Integer) 
        If b = 0 Then
            Return a
        ElseIf a = 0 Then
            Return b
        ElseIf a >= b Then
            Return MaxCD(a - b, b)
        Else
            Return MaxCD(a, b - a)
        End If
    End Function

  • SUMA DE VALORES DE UN VECTOR

    Public Function sumavector(ByVal v() As Integer, ByVal i As Integer)
        If i = 0 Then
            Return 0
        Else
            Return sumavector(v, i - 1) + v(i)
        End If
    End Function

3 comentarios: