Está en la página 1de 5

Ejercicio 1

Se debe implementar la función papersizes .


void papersizes(int i, int n, int l, int b); language-cpp

Su tarea es escribir una función recursiva que obtenga tamaños de papel desde A0 hasta An.
En la papersizes :
i se pasa a papersizes para poder imprimir 0, 1, 2, etc . en A0, A1, A2,
respectivamente.
n le indica cuántos tamaños de papel se deben imprimir. Por ejemplo, de A0 a A6
significa 7 tamaños; por lo tanto, pasamos 7 a papersizes como segundo parámetro.
l y b son el largo y el ancho del papel, respectivamente

La relación ancho-alto de un papel en formato ISO es la raíz cuadrada de 2 a 1. El formato A0


tiene un área de 1 metro cuadrado. El formato A1 es A0 cortado con una línea vertical en dos
mitades iguales; A2 es A1 cortado con una línea horizontal en dos mitades, y así
sucesivamente.
Ejercicio 2
Digamos que eres un viajero en una cuadrícula 2D. Comienzas en la esquina superior
izquierda y tu objetivo es viajar hasta la esquina inferior derecha. Sólo puedes moverte hacia
abajo o hacia la derecha.
¿De cuántas maneras puedes viajar hasta la meta en una cuadrícula con dimensiones m * n ?
Escribe una función grid_traveler(m, n) que calcule esto.
Ejercicio 3
Por favor, implementar la función de factorize .
void factorize(int n); language-cpp

Te dan un número, n . Tu tarea es escribir un programa que obtenga los factores primos del
número mediante una función recursiva.
Debe imprimir su salida en la consola en el formato indicado.
Entrada de muestra
factorizar(24)
Salida de muestra
2 2 2 3

Ejercicio 4
Calcular la suma de elementos de un array usando recursividad
El programa toma un array como entrada y calcula la suma de sus elementos mediante
recursividad.
Sample Input:
8 11 1 100
Sample Output:
120
Ejercicio 5
Encontrar el exponente de un número usando recursividad
El programa toma un número y su exponente como entrada y utiliza la recursividad para
calcular el resultado.
Sample Input:
5
3
Sample Output:
125
Ejercicio 6
El problema del movimiento del caballo es el problema de encontrar la ruta de un caballo de
ajedrez que pasa por todas las casillas del tablero de tamaño n por n una vez.
Se dan 3 números: el tamaño del tablero N , las coordenadas iniciales del caballero a y b .
Resuelva este problema usando una función recursiva.
No es necesario calcular todas las opciones, implementamos un algoritmo de un solo paso.
Llegó a un final, simplemente se detuvo. Por ejemplo, el primer movimiento se realiza con
KnightsMove(a-2, b-1).
Además, en la recursividad, hacemos el siguiente movimiento con el caballo en el sentido de
las agujas del reloj a partir del valor 12:15 :
KnightsMove(a - 2, b + 1) language-cpp
KnightsMove(a - 1, b + 2)
KnightsMove(a + 1, b + 2)
KnightsMove(a + 2, b + 1)
KnightsMove(a + 2, b - 1)
KnightsMove(a + 1, b - 2)
KnightsMove(a - 1, b - 2)
KnightsMove(a - 2, b - 1)

Animacion
Input: 5 3 3
Output:
0 2 13 0 7
12 0 8 3 14
17 0 1 6 9
0 11 18 15 4
0 16 5 10 19

Ejercicio 7
Calcular el enésimo número de Fibonacci de la serie de Fibonacci.
Tienes que escribir una función recursiva de fibonacci . En el parámetro de función, pasará
el valor de tipo int y la función devolverá un valor de tipo int . Se supone que sólo se
utilizará un valor no negativo para el parámetro n .
Ejercicio 8
¿De cuántas maneras puedes poseer 10 Bs? A pesar de su apariencia algo filosófica, la
cuestión es matemática. Dada una cantidad de dinero, ¿de cuántas maneras se puede dividir
utilizando las denominaciones disponibles (billetes y monedas)? Las denominaciones
actuales en Bs son 200, 100, 50, 20, 10 (billetes), 5, 2, 1 (monedas). Tenga en cuenta que
ignoramos los valores inferiores a 1 Bs. La cantidad de 4 Bs, por ejemplo, se puede poseer de
cuatro maneras: (2, 2), (2, 1, 1), (1, 1, 1, 1).
Resuelva el problema para una cantidad de entrada determinada, escribiendo la siguiente
función.
int partition(int amount, vector<int> billsAndCoins, int start); language-cpp
Implementar la función recursiva. La entrada es la cantidad en Bs como int y la salida
esperada es el número de formas en que se puede poseer esa cantidad como int .

También podría gustarte