Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica 1-Edd-Emily Ochoa Sosa
Practica 1-Edd-Emily Ochoa Sosa
Estructura de Datos
REPORTE DE PRÁCTICAS DE PROGRAMACIÓN
Profesor: M.C.C. Cristhian Muñoz Meza Grupo: G2303-0094 Fecha: 15 de septiembre del 2023
Alumno: Emily Ochoa Sosa Valor: Calificación:
PRÁCTICA NÚMERO 1
Curva de Koch aplicando la recursividad
FECHA DE REALIZACIÓN DE LA PRÁCTICA: 4 de septiembre del 2023
COMPETENCIA: 2. Recursividad
TEMA: 2.3 Ejemplos de casos recursivos
TIPO DE PRÁCTICA: Guiada
1. INTRODUCCIÓN
Por medio de esta practica pudimos lograr mostrar y programar la Curva de Koch por medio del análisis
recursivo, es decir, haciendo uso de una misma variable (variables) para completar el copo completo con
diversas curvas de Koch.
Se utilizó el lenguaje Java en la app de software NetBeans versión 8.02
2. PROCEDIMIENTO
1.
2.
Crearemos un método llamado Gráficos
donde declararemos nuestra ventana de
usuario, nuestro lienzo y, además,
crearemos la interfaz que permitirá
visualizar el fractal. También, le
asignaremos un color negro al fondo para
fines meramente estéticos.
INSTITUTO TECNOLÓGICO SUPERIOR DE EL MANTE
Estructura de Datos
REPORTE DE PRÁCTICAS DE PROGRAMACIÓN
Profesor: M.C.C. Cristhian Muñoz Meza Grupo: G2303-0094 Fecha: 15 de septiembre del 2023
Alumno: Emily Ochoa Sosa Valor: Calificación:
3.
A continuación, crearemos una clase llamada Punto,
ésta nos ayudará a crear un punto de referencia en el
espacio gráfico.
6.
Crearemos a continuación un método de tipo Punto
llamado medio, es decir, nos calculará el punto medio
del segmento de recta dada. Ingresaremos dos puntos
a y b (punto inicio y punto final) y sumaremos sus
coordenadas para saber cuál es la mitad de este
segmento. Le asignaremos color a cada medio
segmento y, por último, lo retornaremos para
mostrarlo en lienzo.
7.
Una vez identificado el punto medio de cada
segmento generado, habrá que rotar con respecto
a este punto medio, específicamente, 60 grados,
Para ello, se crea el método de tipo Punto llamado
RotarConOtro que nos ayudará a abrir un ángulo
de 60 grados realizando las operaciones
matemáticas correspondientes respecto al punto
medio y además marcarlo en el lienzo, esto último,
retornando el punto p en pantalla.
8.
Por último y antes de iniciar con la recursividad,
se crea el método linea que consiste en ingresar
un punto a y un punto b (puntos inicial y final) y
además un punto gráfico g que nos ayudará a
marcarlo en el lienzo.
9.
Es entonces cuando podemos crear un método de tipo
Graphics, es decir, que devolverá un gráfico en pantalla
y que se llamará CurvaKoch. Necesitará una línea de
tipo Graphics denominada g, un punto inicial (pi) y un
punto final (pf) así como un dato de tipo int
denominado n que será el nivel de recursividad.
10.
Por último, crearemos 3 líneas para conectar los puntos
finales con iniciales, también se le asignará un nivel de
recursividad inicial de 1. Luego de todo el
procedimiento detallado, el código está listo para
compilar
3. PRUEBAS
1. Nivel de recursividad 0
2. Nivel de recursividad 1
INSTITUTO TECNOLÓGICO SUPERIOR DE EL MANTE
Estructura de Datos
REPORTE DE PRÁCTICAS DE PROGRAMACIÓN
Profesor: M.C.C. Cristhian Muñoz Meza Grupo: G2303-0094 Fecha: 15 de septiembre del 2023
Alumno: Emily Ochoa Sosa Valor: Calificación:
3. Nivel de recursividad 5
Para todas las pruebas que se hicieron, el único parámetro ajustable era el nivel de recursividad que se utilizaba
dentro del compilado.
4. RESULTADOS
1. Nivel de recursividad 0
2. Nivel de recursividad 1
En el nivel de recursividad 1, se cierra el
triángulo y, además, encuentra puntos medios,
por tanto, hace trabajar a los métodos para
encontrar la razón y segmentar estos puntos y,
además, rotar con respecto a este punto
medio. Se le asigna colores y genera una
combinación de ambos colores por segmento,
es por eso que se ve una diferencia en los
colores por segmento.
3. Nivel de recursividad 5
En un nivel de recursividad más avanzado como lo
es el nivel 5, se observa claramente una figura
semejante a la de un copo de nieve, simplemente
que este copo está hecho a base de recursividad y
de métodos referentes a la razón, a los puntos
medios y a la rotación de puntos con respecto a un
punto medio en un lienzo. Se asignan colores a
cada segmento y la unión de todos crean un
contraste muy llamativo a la vista del usuario.
INSTITUTO TECNOLÓGICO SUPERIOR DE EL MANTE
Estructura de Datos
REPORTE DE PRÁCTICAS DE PROGRAMACIÓN
Profesor: M.C.C. Cristhian Muñoz Meza Grupo: G2303-0094 Fecha: 15 de septiembre del 2023
Alumno: Emily Ochoa Sosa Valor: Calificación:
5. CONCLUSIONES
Con la elaboración de la practica se lograron abordar temas matemáticos que todo ingeniero debe conocer, el
desarrollo y la implementación de una interfaz gráfica, así como un lienzo y una ventana de usuario fueron otras
dos novedades en la compilación para este proyecto. La recursividad observada en el desarrollo puede ser muy
útil, sin embargo, todos logramos coincidir en que el uso de la misma es algo muy costoso para la memoria,
debido a que, ligeramente es el llamado de la variable una y otra vez y que siempre este en función de si misma.
6. COMENTARIOS
La práctica durante su elaboración se torno complicada debido a la dificultad con la que cuenta el lenguaje de
Java, sin embargo, las herramientas con las que cuenta el IDE NetBeans 8.02 ayudaron un poco mas a poder
implementar, crear y lograr la ejecución del programa
7. REFERENCIAS 8. SELLO