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.