ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

RECURSIVIDAD PRACTICA


Enviado por   •  9 de Noviembre de 2022  •  Prácticas o problemas  •  1.041 Palabras (5 Páginas)  •  44 Visitas

Página 1 de 5

Objetivos

Para esta actividad tenemos en mira los siguientes objetivos:

  • Realizar una aplicación que permita resolver los algoritmos recursivos y obtener cada uno de sus resultados.
  • Aplicar la Estructura de Datos para resolver problemas relacionados a la ingeniería.
  • Desarrollar nuevas habilidades en la programación.

Desarrollo

Para esta primera practica en introducción a nuestro nuevo curso Estructura de Datos analizamos nuevos conceptos de suma importancia para el manejo adecuado de datos y uno de ellos fue la Recursividad.

En la recursividad tenemos la posibilidad de definir un tipo de datos en términos de sí mismo y esto permite establecer instancias complejas de un proceso en términos de instancias más simples y de una o más instancias finales definidas explícitamente. Además de sus partes que componen como lo son:

  1. Caso base (mayormente es la condición if)
  2. Recursividad (Llamada al mismo método con valores distintos en cada llamada)
  • Creación del proyecto, paquete y clases a usar

Iniciando esta practica en mi caso cree un proyecto del tipo Java with Ant > Java Application nombrado RecursividadGpoB siguiendo las buenas prácticas de programación de Java usando la forma de camello, seguido por nuestro paquete contenedor de las clases y nuestras clases en donde Clase_Principal almacenara los llamados e ingresos de valores para nuestas operaciones como también nuestro método principal public static main, y nuestra clase Recursividad almacenara cada uno de los métodos para las operaciones y cálculos por hacer, por lo que el orden quedo asi:

[pic 1]

Entonces teniendo en cuenta la pequeña definición tuvimos en la mira solucionar y crear un algoritmo para:

  • Encontrar la factorial de un numero (n)

Por lo tanto, tomando en cuenta las partes de la recursividad analizamos y llegamos a una conclusión de que cada una de las partes se componen de esta manera, todo estos procedimientos van en nuestra clase Recursividad:

Caso base

if (n == 1) donde n es nuestro numero

Recursividad

return n * factorial(n - 1) en donde return n es el regreso del valor de nuestro numero por la llamada de nuestro método pero con diferente valor puesto que se le resta -1, de esta manera concluimos que es la llamada recursiva.

Por lo tanto, procedimos a diseñar el método que a diferencia de otros métodos es algo diferente pues tiene un propósito, nos quedó de la siguiente manera:

Método – Factorial de un numero

Podemos observar que en vez de usar public void se usa public int y esto se debe a que si usásemos public void el valor no se regresaría y por lo tanto nuestra llamada recursiva no sería cumplida. Además, otra observación es el static y esto se debe a que como no estamos programando orientado a objetos empleamos static para acceso a métodos y variables de clase sin la necesidad de instanciar un objeto de dicha clase, permitiendo la inicialización de forma cómoda y durante la carga de clase.[pic 2][pic 3]

  • Calcular el numero Fibonacci de un numero (n)

Siguiendo con nuestro programa procedimos a crear el método del calculo de un numero Fibonacci en donde de la misma forma que el método anterior buscamos nuestro caso base y recursividad:

Caso base

if(n == 1){ donde n es nuestro numero

               return 0;

           }else{

               if(n == 2){

                   return 1;

               }

Recursividad

return fibonacci(n -1) + fibonacci(n -2); en donde return n es el regreso del valor de nuestro número por la llamada de nuestro método pero con diferente valor puesto que se le resta -1 y -2, de esta manera concluimos que es la llamada recursiva. 

...

Descargar como (para miembros actualizados) txt (6 Kb) pdf (177 Kb) docx (107 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com