Recursividad_Programacion. LenguajeC
Enviado por jony_Anonimo • 18 de Enero de 2021 • Práctica o problema • 1.536 Palabras (7 Páginas) • 102 Visitas
Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas[pic 1]
Alumno
Jonathan de Jesús Martínez Pérez
Unidad de Aprendizaje: Programación
Profesor
M. en C. Niels Henrik Navarrete Manzanilla
Actividad / Práctica
(Práctica 3)
Ciudad de México; a 01 de noviembre de 2020.
Índice
Contenido
INTRODUCCIÓN 4
DESARROLLO 5
PROGRAMA 1 5
Descripción 5
Análisis 5
Requerimientos Funcionales 6
Requerimientos no Funcionales 6
Diagramas 7
Código 7
Resultados 9
PROGRAMA 2 9
Descripción 9
Análisis 9
Requerimientos Funcionales 10
Requerimientos no Funcionales 11
Diagramas 11
Código 12
Resultados 13
Descripción 13
Análisis 13
Requerimientos Funcionales 14
Requerimientos no Funcionales 14
Diagramas 15
Código 16
Resultados 17
CONCLUSIONES 17
REFERENCIAS BIBLIOGRÁFICAS 18
INTRODUCCIÓN |
La recursividad es un concepto fundamental en matemáticas y en computación. Es una alternativa diferente para implementar estructuras de repetición (ciclos). Los módulos se hacen llamadas recursivas. Se puede usar en toda situación en la cual la solución pueda ser expresada como una secuencia de movimientos, pasos o transformaciones gobernadas por un conjunto de reglas no ambiguas.
A un concepto se le denomina recursivo cuando se contiene a sí mismo en parte o si forma parte de su propia definición. La recursividad se sustenta en el razonamiento por recurrencia. Típicamente se trata de una serie cuyo término general se expresa a partir de términos anteriores. Por ejemplo, la factorial de un determinado número N es el producto de los números enteros menores o iguales a este número N. Se denota N! y por definición el factorial de 0 es 1, lo que da:
0! = 1
1! = 1
2! = 1*2
3! = 1*2*3
(…)
N! = 1*2*3 ….*(N-1)*N
La notación general es:
N! = 1 si N = 0
N! = N*(N-1)! si N > 0
y claramente se puede ver que el factorial de N se define en función de sí mismo (N-1)!; por lo tanto, es un proceso recursivo.
DESARROLLO |
PROGRAMA 1
Descripción
Obtener la factorial de cualquier número
Análisis
ALGORITMO
1.- ¿Cuáles son las entradas y salidas?
-Entradas fact, numer,aux,resul, salida factorial.
2.- ¿Cuál es el funcionamiento (¿Qué va a hacer?) que operación hacer?
Su funcionamiento principal es encontrar la factorial de cualquier número que sea positivo mediante multiplicación.
3.- ¿Qué espero de salida?
Salida =[numérica] = La factorial de un número.
PSEUDOCÓDIGO
int fact(int numer)
if(numer<=1)
return 1;
else
return numer* fact(numer-1);
int aux =0, resul =0;
resul = fact(aux);
Requerimientos Funcionales
-Comparación
-Multiplicación
-Resta
-Valores numéricos
-If
Requerimientos no Funcionales
-Raíz
-For
-While
-Números imaginarios
Diagramas
[pic 2]
Código
#include <stdio.h>
#include <stdlib.h>
int fact(int numer){
if(numer<=1){
return 1;
}else{
return numer* fact(numer-1);
}
}
int main(){
int aux =0, resul =0;
printf("\tRECURSIVIDAD\n");
printf("Ingrese un numero: ");
scanf("%d",&aux);
resul = fact(aux);
printf("El factorial de %d ! = %d\n", aux, resul);
}
Resultados
[pic 3]
PROGRAMA 2
Descripción
Obtener la suma de cualquier número, es decir, si pongo el valor 3. Se espera lo siguiente 6 (3+2+1)
...