Vous êtes sur la page 1sur 3

3ra Asesora Algoritmos y Estructura de Datos (ST-221)

Asesores: Richard PY, Marco RR, Johnny VP.




PROBLEMAS: SUBPROGRAMAS RECURSIVOS
1. (13-1) Disee un subprograma recursivo que permita recibir una lnea de texto y la cantidad de
caracteres almacenadas en ella y luego nos retorne el nmero de palabras que hay en dicha lnea
de texto.
Nota: Considere que puede haber espacios en blanco al inicio y al final de la lnea de texto y que
entre palabras tambin puede haber ms de un espacio en blanco. No se aceptar ningn
subprograma que contenga instrucciones repetitivas.

2. (13-1F) Un colegio que tiene n docentes desea formar comisiones diferentes de k docentes cada
comisin. Se pide disear el algoritmo recursivo que halle el nmero de comisiones de dicho
docentes.

3. (12-2) Crear un subprograma recursivo que reciba un lnea de texto y luego reemplace los
caracteres dgitos cuyo duplo numrico sea mayor con un carcter anterior (el ms cercano) cuyo
duplo numrico sea menor a quince.
Por ejemplo:
Se recibe la lnea de texto: AB9F.
Caracter dgito: '9', su duplo numrico es 18 (mayor 15)
Caracteres anteriores: '8', '7', '6', etc. El caracter ms cercano cuyo duplo es menor a 15 es '7'.
Luego, la modificacin es: AB7F.

4. (11-1) Disee un subprograma recursivo que permita recibir un valor real x un nmero entero
positivo n y luego calcule el valor numrico de la siguiente expresin.
2 4 2
1 ... ( 1)
2! 4! (2 )!
n
n
x x x
E
n


5. (09-1) Disee un subprograma recursivo que permita hallar el mnimo comn mltiplo de dos
nmeros enteros positivos.

6. (09-2) Disee un subprograma recursivo que reciba a dos conjuntos (A y B) de nmero enteros
positivos que tienen n y m elementos respectivamente (n,m<=100). Luego debe devolver la
cantidad de nmeros capicas comunes a ambos conjuntos.

8. (08-2) Disee un subprograma recursivo que reciba un vector que tiene almacenado n dgitos
(n<=12) y devuelva un nmero entero positivo N formado con los elementos del vector.
Ejemplo:
Entrada: Vector: 3 2 4 5 2
Salida: Nmero N= 32451

7. (08-1) Disee un subprograma recursivo que reciba un vector de n edades (n<=100). Luego el
subprograma debe mostrar la mayor edad y en que posiciones del vector se encuentra.
Por ejemplo para n=5, tenemos el siguiente vector.
13 21 14 21 11
1 2 3 4 5
Mayor Edad Posiciones
21 2
21 4
3ra Asesora Algoritmos y Estructura de Datos (ST-221)

Asesores: Richard PY, Marco RR, Johnny VP.


Nota: Todos los subprogramas que utilice deben ser recursivos.
8. (08-1F) Dada la siguiente sucesin:
a1=1; a2=5; an=2an-1-3an-2, n>=3
Disee un subprograma recursivo que dado n (n>=1) permita obtener el trmino an.

9. (07-2) Disee un subprograma RECURSIVO que permita recibir un nmero num entero positivo
no menor de 7 cifras y un nmero sec entero positivo de 3 cifras. Luego el subprograma debe
modificar el nmero num, de tal forma que se elimine de l la secuencia de nmeros de sec.
Finalmente debe retornar el nmero num modificado.
Por ejemplo:
El subprograma recibe:
num = 2376834583469345
sec = 345
El subprograma devuelve:
num modificado: 2376883469

10. (07-1) Se tienen los vectores A y B que almacenan los elementos de dos conjuntos de nmeros
enteros. Si m y n son los nmeros de elementos de A y B respectivamente (m,n<=100), disee una
FUNCIN RECURSIVA que reciba a los vectores y luego retorne el nmero de elementos comunes a
ambos.

11. (07-1F) Crear un subprograma recursivo que permita recibir el numerador (N) y el
denominador (D) (ambos enteros positivos) de una fraccin (N/D) y luego nos entregue modificado
el numerador y el denominador de tal forma que la fraccin sea irreductible.
Por ejemplo:
a) Si el subprograma recibe: N=15 y D=6.
El subprograma entrega modificados: N=5 y D=2.
b) Si el subprograma recibe: N=30 y D=45.
El subprograma entrega modificados: N=2 y D=3.

12. (06-2) Disee un subprograma recursivo que permita recibir dos conjuntos de nmeros enteros
A y B de n y m elementos respectivamente (n<=20, m<=30) luego nos presente los elementos de B-
A.
Nota:
i. El subprograma recursivo no debe tener ninguna instruccin repetitiva.
ii. Si requiere emplear otros subprogramas, stos deben ser recursivos.

13. (06-2F) Disee un subprograma recursivo que reciba un nmero entero positivo N y luego
presente la descomposicin cannica de N.
Ejemplo:
ENTRADA: N=72
SALIDA: Se presenta la descomposicin cannica:
Factor primo: 2, exponente: 3
Factor primo: 3, exponente: 2
Nota: 72=2x3


3ra Asesora Algoritmos y Estructura de Datos (ST-221)

Asesores: Richard PY, Marco RR, Johnny VP.


14. (06-1) Crear un subprograma recursivo que reciba un valor de n (entero) y un valor de X (real) y
nos entregue el valor de la siguiente suma:
1 3 5 7 2 1
... ( 1)
1! 3! 5! 7! (2 1)!
n
n
x x x x x
S
n

; n>=1
15. (06-1F) Disee un subprograma recursivo que reciba a dos nmeros enteros positivos y
empleando solo operaciones de suma, devuelva el producto de ambos nmeros.

16. (05-2) Disee un subprograma RECURSIVO reciba dos conjuntos A y B con n y m elementos
enteros respectivamente (n<=50 y m<=50) y luego presente los elementos comunes a ambos
conjuntos.
(Nota: El proceso de bsqueda tambin debe ser recursivo.)

17. (05-1) Crear un subprograma recursivo que permita recibir un vector de n (n<=50) nmeros
enteros y luego debe entregar el Mximo Cmun Divisor de los n nmeros almacenados en el
vector.

18. (05-1) Crear una funcin recursiva que reciba un nmero hexadecimal (como cadena) y luego
nos retorne su equivalente en el sistema decimal.

19. (04-1) Disee un algoritmo que almacene los elementos (nmeros enteros) de dos conjuntos A
de n elementos (n<=50) y B de m elementos (m<=50) donde m<=n y mediante una funcin
recursiva averige si B est contenido en A.

20. (04-1F) Crear un programa recursivo que permita recibir los parmetros a (real) y b (entero);
luego presente el valor de a
b
si es posible o un mensaje de error en caso contrario.
Nota: El subprograma debe considerar todos los posibles valores que pueden tomar a y b.

21. (03-2F) Disee un subprograma recursivo que reciba una lnea de texto y un caracter a buscar.
Luego nos devuelva el nmero de veces que aparece dicho caracter.

22. (02-2) Crear una funcin recursiva que reciba una lnea de texto y la longitud de la misma y nos
retorne el nmero de palabras.

23. (02-2F) Crear un subprograma recursivo que permita calcular el valor numrico de un
polinomio de grado n.
Nota: Usted debe indicar los parmetros a utilizar en el subprograma.

24. (02-1) Disear un subprograma recursivo que reciba un nmero entero y luego la muestre en
forma invertida.
Ejemplo: el nmero: 123
en forma invertida: 321
Nota: Ud. Puede emplear otros parmetros si fuesen necesarios.

Vous aimerez peut-être aussi