Está en la página 1de 3

EJERCICIOS PROPUESTOS SUBPROGRAMAS

Para cada ejercicio, la lectura (introducir datos de entrada), se debe tener un


subprograma que permita validar y reutilizar.
1. Desarrollo un algoritmo modular para calcular el valor de la siguiente serie,
considerando los primeros n términos, donde X, Y pueden tomar cualquier valor real
positivo, leído por teclado:

x1/y2 + x2/y4 + x3/y6 + x4/y8 + x5/y10 + ……….

2. Realizar un procedimiento que reciba como entradas un día, un mes y un año, y


devuelva la fecha del día siguiente a través de los mismos parámetros, además de un
código de error (0 si to ha ido bien y 1 si no se podido calcular)
3. Escribir un programa modular que realice la descomposición en factores primos de un
número introducido por teclado. El programa deberá ir escribiendo la tabla de los
factores primos, a medida que los va calculando, tal como se muestra el ejemplo
siguiente:
Introduce un N° entero -> 84
N° | Factores primos --- | ------------ 84 | 2 42 | 2 21 | 3 7 | 7 1|
4. Función máximo divisor comunes. Escribir el código de la función externa que devuelva
el máximo común divisor de dos números que se reciben como parámetros formales
5. Desarrollo un algoritmo modular para calcular la suma de dos fracciones introducidas
por teclado (numerador y denominador por separado), simplificando y mostrando el
resultado en forma de fracción.
6. Realizar un programa modular para calcular la potencia de dos números a través de
productos sucesivos:
53 = 5 * 5 * 5 = 125
7. Realizar un programa modular para calcular el producto de dos números a través de
sumas sucesivas:
5 * 4 = 5 + 5 + 5 + 5 = 20
8. Desarrolle un algoritmo modular que permita obtener el valor máximo y el valor
mínimo de una lista de n números aleatorios que tengan dos dígitos (entre 10 y 99), el
algoritmo debe contener, una función para introducir la cantidad de números (n), otra
función que genere los números aleatorios de dos dígitos y determine el valor máximo
y valor mínimo. Una tercera función que muestre los resultados (valor máximo y
mínimo).
9. Desarrollar un programa modular que evalúe la función matemática:
a !+ b !+c ! e2
f ( a ,b , c , d , e )= +
d! e!
10. Desarrollar un programa modular para leer un número que tenga exactamente 6
dígitos, y elimine todos los dígitos impares que tenga. Ejemplo:
Si N = 123456 → N=246

11. Desarrollar un algoritmo modular, que determine el valor de la suma de N términos de


la serie de Fibonacci:
1, 1, 2, 3, 5, 8, 13, 21, 34, ………………………….
Ejemplo: Partiendo de los dos primeros términos 1 y 1; para luego en forma
ascendente hallar el tercer término 1+ 1 = 2, posteriormente 1 + 2 = 3, 2 + 3 = 5, etc.
12. Desarrollar un algoritmo modular, que acepte tres números enteros positivos N1, N2,
N3 y determine cuál de ellos tiene la mayor cantidad de dígitos pares, utilizando
funciones.
13. Realizar un programa que tenga una función para que lea dos números enteros x e y
de más de dos dígitos, y que calcule la potencia X Y, el cálculo de la potencia debe
hacerlo utilizando una función recursiva y calcule la suma de los dígitos del numero
resultante utilizando una función recursiva:

14. El algoritmo de Euclides para encontrar el mcd (máximo común divisor) de dos
números enteros positivos (M y N) se puede definir recursivamente. Desarrolle un
programa que emplee una función externa para el cálculo de mcd. El algoritmo de
Euclides determina que el mcd de dos enteros es el entero mayor que divide a ambos
números:

15. Determinar el valor de la suma de N términos de la seria Fibonacci utilizando una


función recursiva. Partiendo de los dos primeros términos 1 y 1; para luego en forma
ascendente hallar el tercer término 1 + 1 = 2 posteriormente 1+ 2 = 3, 2 + 3 = 5, 3 + 5 =
8 y así sucesivamente: 1 1 2 3 5 8 13 21 34 …………….
16. Desarrolle un programa modular para leer un entero positivo de más de 2 dígitos y con
una función recursiva mostrar y generar su número inverso.
17. Desarrolle un programa modular para calcular el factorial de un número de forma
recursiva.
18. Desarrollo un programa modular recursivo para calcular la potencia de 2 números
enteros.
19. Desarrolle un programa modular recursivo para calcular el producto de 2 números
enteros.
20. Desarrollar un programa modular con las siguientes opciones:
a)   Introducir un valor entero impar comprendido entre 1 y 19
b)   Calcular la serie numérica 1 + 3 + 5 + ··· + n
c)   Calcular 1 * 3 * 5 * ··· * n
d)   Salir del programa.

También podría gustarte