Etiqueta: funciones recursivas

  • 2Eva_IT2007_T1 Funciones par e impar recursivas

    2da Evaluación I Término 2007-2008. Agosto 28, 2007 /ICM00794

    Tema 1. (20 puntos) Sean las funciones recursivas:

    par(n) = \begin{cases} 1, & n=0\\impar(n-1), & n>0 \end{cases} impar(n) = \begin{cases} 0, & n=0\\par(n-1), & n>0 \end{cases}
    Ejemplos: 
     >> par (4) retorna 1
     >> impar (4) retorna 0
     >> par (5) retorna 0
     >>impar (5) retorna 1

    a) Escriba las funciones par e impar, dichas funciones retornan 1 si el número tiene la característica de la función llamada.

    b) Escriba un programa principal donde se generen de forma aleatoria n números enteros comprendidos entre 10 y 50. Luego, utilizando las funciones anteriores, determine si la mayoría de los números generados fueron pares. El número n debe ser pedido al usuario.

  • 2Eva_IT2005_T2 Calcular potencia recursiva

    Final I Término 2005 – 2006. Agosto 28, 2005 /ICM00794

    Tema 2. (20puntos)
    a) Escriba en matlab una función recursiva Potencia(base,exponente) que permita calcular la potencia de un número.

    La función recibe dos parámetros: base y exponente, entregando como resultado la operación antes mencionada.

    baseexponente = 24=2.23=2.2.22=2.2.2.2

    b) Escriba en matlab un programa principal que evalúe un polinomio de grado n. Ingrese los coeficientes en un vector a(i) y un valor x para evaluar el polinomio de la forma:

    p(x) = an.xn + an-1.xn-1+ … + a1. x1 + a0

    En los cálculos de potencias se debe usar la función potencia(base, exponente).

    Rúbrica: literal a (10 puntos), literal b (10 puntos)

  • 2Eva_IIT2004_T1 Calcular raíz cúbica recursiva

    Final II Término 2004 – 2005. Febrero, 2005 /ICM00794

    Tema 1. Para Calcular la raíz cúbica x de un número n se puede usar repetidamente la siguiente fórmula:

    x = \frac{2 x^3+n}{3 x^2}
    Si comienza con un valor inicial de x ← 1, 
    esta fórmula produce valores de x cada vez
    más cercanos a la raíz cúbica de n.

    Escriba una función cubic(n) que entregue con 4 decimales exactos la raíz cúbica de un número dado n.

    La función debe incluir una repetición y salir cuando la diferencia entre el valor de n y el valor de x3 sea menor a 0.0001.

    Escriba un programa de prueba para obtener las raíces cúbicas de los números n = 1, 2, 3, 4 … 20

     

  • 2Eva_IIIT2003_T2 Raíz cuadrada por Newton, recursiva

    Final III Término 2003 – 2004. Abril 23, 2004 /ICM00794

    Tema 2. La raíz cuadrada de un número real x mayor que 0 se puede obtener a través de una aproximación n-ésima de una función f según el método de Newton, el cual establece lo mostrado:

    f(1) = \frac{x}{2} f(2) = 0.5\Bigg(f(1) + \frac{x}{f(1)}\Bigg) f(3) = 0.5\Bigg(f(2) + \frac{x}{f(2)}\Bigg)

    ...

    f(n) = 0.5\Bigg(f(n-1) + \frac{x}{f(n-1)}\Bigg)

    a) Escriba una función recursiva f que reciba dos parámetros:

    • x (el número del cual se desea calcular la raíz cuadrada) y
    • n (el número de aproximaciones).

    Esta función debe retornar la raíz cuadrada de x para la n-ésima aproximación.

    b) Escriba un programa que permita el ingreso de un número real x y que, mediante sucesivas llamadas a la función f, muestre los resultados del cálculo de la raíz cuadrada de dicho número para cada una de las 10 primeras aproximaciones (n = 1, 2, 3, .. , 10).

    Nota: considere aplicar una bandera como indicador que la raiz no es posible para números negativos o cero. Tampoco es posible para n menores que 1

    Referencia: https://es.wikipedia.org/wiki/Ra%C3%ADz_cuadrada


    Ejemplo:

    ingrese x: 9
    aproximación n-esima: 10
     i , f(i)
    0 nan
    1 4.5
    2 3.25
    3 3.0096153846153846
    4 3.000015360039322
    5 3.0000000000393214
    6 3.0
    7 3.0
    8 3.0
    9 3.0
    10 3.0
    >>> 
    
  • 2Eva_IIT2003_T3 Funciones eudoxus recursivas

    Final II Término 2003 – 2004. Febrero 10, 2004 /ICM00794

    Tema 3. Los números de Eudoxus se definen mediante la siguiente formulación:

    {x[0] = 1
    {x[i] = y[i] + y[i-1] , i>=1
    
    {y[0] = 0
    {y[i] = x[i-1] + y[i-1] , i>=1

    a) Escriba las funciones recursivas eudoxusX(i) y eudoxusY(i) que permitan generar cada par ordenado(xi, yi).

    b) Adicionalmente escriba un programa de prueba que, utilizando las funciones anteriores, muestre los pares ordenados generados recursivamente para 0≤in, donde n es un valor entero leído previamente.

  • 2Eva_IT2003_T2 Función recursiva f(n)

    Final I Término 2003 – 2004. Septiembre 02, 2003 /ICM00794

    Tema 2. (25 puntos) Escriba una función recursiva f en C/C++ tal que:

    f(n) ={1/2, si n=0 ó n=1
          {1/2*[f(n-1) + f(n-2)], si n es impar mayor que 1
          {1/2*[f(n-1) - f(n-2)], si n es par mayor que 1

    Escriba un programa en C/C++ que determine el mayor valor de la función f para n=0, 1, 2, 3, 4, 5

  • 2Eva_IIT2001_T3 Flujo de ahorro para n años

    Final II Término 2001 – 2003. Febrero 5, 2002 /ICM00794

    Tema 3.

    El flujo de efectivo Fk se evalúa recursivamente considerando el flujo neto anterior Fk-1 y las tasas i1, i2 tal como se indican en la fórmula.

    F_k = \begin{cases} (1 + i_1)F_{k-1}+C_k, && F_{k-1} \ge 0, k>0 \\(1 + i_2)F_{k-1}+C_k,&& F_{k-1} \lt 0, k \gt 0 \\ 0 ,&& k=0 \end{cases}

    En la fórmula, C representa un arreglo de los valores del flujo para n años que operan en un determinado negocio (los valores negativos indican desembolsos)

    Ejemplo:
    C0 C1 C2 C3 C4 Cn
    -500 300 600 -200 300 -200 -300 350

    a) Escriba una función recursiva para poder utilizar FK.

    b) Escriba un programa principal que lea i1, i2, y el arreglo Ck, de n elementos y llame a la función anterior para calcular FK.

    c) Posteriormente, en el mismo programa asigne a i1, el valor de 0.1 y pida por teclado dos valores para i2. Evalúe FK para los casos e identifique si hubo un cambio de signo.

    Nota: Considere las variables float C[20], i1, i2 como globales.