Práctica sobre funciones

Realiza una investigación donde se define el concepto de funciones recursivas y presenta tres ejemplos de ellas.


Un método recursivo es un método que se llama a sí mismo una o varias veces para completar su función o encontrar una solución.


Su uso no es aconsejable ya que cada vez que una función llama a otra en la pila se va guardando el resultado de las otras funciones y las llamadas para poder recuperar o volver a ese punto, en resumen consume más recursos.


Ejemplo #1

namespace metodos_en_Csharp

{

    internal class Program

    {


        static void contar(int desde, int hasta)

        

        {

            Console.WriteLine("cuento " + desde);

            if (desde == hasta)

            {

                return;

            }

            else

            {

                contar(desde + 1, hasta);

            }

        }

        static void Main(string[] args)

        {

//  se hace llamado a la función contar, la función procede a mostrar en pantalla el conteo de los valores dados en los parámetros.


            contar(1, 10);

            Console.ReadKey();

        }


Ejemplo #2


namespace metodos_en_Csharp

{

    internal class Program

    {


        static void recorrer(int[] arreglo, int posicion = 0)

        {

            if (posicion == arreglo.Length)

                return;



            Console.WriteLine(arreglo[posicion]);

            recorrer(arreglo, posicion + 1);

       

        }

        static void Main(string[] args)

        {

             // se crea un arreglo de enteros y se instancia de inmediato

            int[] ArregloDeEnteros = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

    

            // se hace el llamado a la función para recorrer el arreglo de manera recursiva.

            recorrer(ArregloDeEnteros);


            Console.ReadKey();

        }

    }

}




Ejemplo #3

namespace metodos_en_Csharp { internal class Program { static int suma (int[] arreglo,int posicion= 0) { if (posicion == arreglo.Length) { return 0; } else { return arreglo[posicion] + suma(arreglo,posicion + 1); } } static void Main(string[] args) { int[] ArregloDeEnteros = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

            // se hace llamado la función suma que realizara la suma de los elementos que componen
             el arreglo de vectores. int total = suma(ArregloDeEnteros); Console.WriteLine(total); Console.ReadKey(); } } }


Comentarios

Entradas populares