Browse Source

README-es.md edited on August 3, 2016 at 2:55pm

Jose R Ortiz Ubarri 8 years ago
parent
commit
6ca9c39126
1 changed files with 7 additions and 12 deletions
  1. 7
    12
      README-es.md

+ 7
- 12
README-es.md View File

8
 
8
 
9
 Una técnica muy utilizada en programación es la *recursión*. Con esta técnica se resuelven problemas resolviendo un problema similar, pero para casos más pequeños. Podemos construir conjuntos de objetos o procesos utilizando *reglas recursivas* y *valores iniciales*. Las *funciones recursivas* son funciones que se auto-invocan, utilizando cada vez conjuntos o elementos más pequeños, hasta llegar a un punto en donde se utiliza el valor inicial en lugar de auto-invocarse. Los fractales son un ejemplo de figuras que se pueden crear usando recursión. En esta experiencia de laboratorio practicarás la definición e implementación de funciones recursivas para dibujar formas auto-similares (fractales).
9
 Una técnica muy utilizada en programación es la *recursión*. Con esta técnica se resuelven problemas resolviendo un problema similar, pero para casos más pequeños. Podemos construir conjuntos de objetos o procesos utilizando *reglas recursivas* y *valores iniciales*. Las *funciones recursivas* son funciones que se auto-invocan, utilizando cada vez conjuntos o elementos más pequeños, hasta llegar a un punto en donde se utiliza el valor inicial en lugar de auto-invocarse. Los fractales son un ejemplo de figuras que se pueden crear usando recursión. En esta experiencia de laboratorio practicarás la definición e implementación de funciones recursivas para dibujar formas auto-similares (fractales).
10
 
10
 
11
+
11
 Los ejercicios de esta experiencia de laboratorio son una adaptación de https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-6-turtle-recursion.
12
 Los ejercicios de esta experiencia de laboratorio son una adaptación de https://sites.google.com/a/wellesley.edu/wellesley-cs118-spring13/lectures-labs/lab-6-turtle-recursion.
12
 
13
 
13
 
14
 
43
 ---
44
 ---
44
 
45
 
45
 
46
 
46
-Una manera ingeniosa de practicar y "visualizar" recursión es programando funciones que produzcan figuras auto-similares (o recursivas). Por ejemplo, considera una figura recursiva que llamaremos *rama*. La Figura 3 muestra `rama(0,90)`, `rama(1,90)` y `rama(2,90)`.
47
+Una manera ingeniosa de practicar y visualizar recursión es programando funciones que produzcan figuras auto-similares (o recursivas). Por ejemplo, considera una figura recursiva que llamaremos *rama*. La Figura 3 muestra `rama(0,90)`, `rama(1,90)` y `rama(2,90)`.
47
 
48
 
48
 ---
49
 ---
49
 
50
 
54
 ---
55
 ---
55
 
56
 
56
 ¿Puedes ver el comportamiento recursivo de esta figura? Nota que `rama(0,90)` es solo un segmento vertical (un segmento en un ángulo de 90 grados); `rama(1,90)` es `rama(0,90)` con dos segmentos inclinados en su extremo superior. Más preciso, `rama(1,90)` es `rama(0,90)` con una `rama(0,60)` y una `rama(0,120)` en el extremo superior. Similarmente, `rama(2,90)` es `rama(0,90)` con dos `rama(1,90)` inclinadas en el extremo superior. Esto es, `rama(2,90)` es:
57
 ¿Puedes ver el comportamiento recursivo de esta figura? Nota que `rama(0,90)` es solo un segmento vertical (un segmento en un ángulo de 90 grados); `rama(1,90)` es `rama(0,90)` con dos segmentos inclinados en su extremo superior. Más preciso, `rama(1,90)` es `rama(0,90)` con una `rama(0,60)` y una `rama(0,120)` en el extremo superior. Similarmente, `rama(2,90)` es `rama(0,90)` con dos `rama(1,90)` inclinadas en el extremo superior. Esto es, `rama(2,90)` es:
58
+
57
 `rama(0,90)` con una `rama(1,60)` y una `rama(1,120)` en el extremo superior. Nota que $$60=90-30$$ y que $$120=90+30$$.
59
 `rama(0,90)` con una `rama(1,60)` y una `rama(1,120)` en el extremo superior. Nota que $$60=90-30$$ y que $$120=90+30$$.
58
 
60
 
59
-De esta manera podemos expresar `rama(n,A)` como una composición de $$n$$ ramas más pequeñas e inclinadas. El Código 1 provee una manera de expresar `rama` como una función recursiva.
61
+De esta manera podemos expresar `rama(n,A)` como una composición de ramas de $$n$$ ramas más pequeñas e inclinadas. El Código 1 provee una manera de expresar `rama` como una función recursiva.
60
 
62
 
61
 ---
63
 ---
62
 
64
 
91
 
93
 
92
 En la experiencia de laboratorio de hoy implementarás funciones recursivas para producir fractales.
94
 En la experiencia de laboratorio de hoy implementarás funciones recursivas para producir fractales.
93
 
95
 
96
+
94
 ### Ejercicio 1 - Copo de nieve
97
 ### Ejercicio 1 - Copo de nieve
95
 
98
 
96
 Una de las figuras fractales más simples es la figura de un copo de nieve. Esta figura se forma a partir de un triángulo isósceles, sustituyendo el segmento del tercio del medio de cada lado por una "V" invertida. La medida de los lados de la "V" es igual a la medida del segmento que sustituye. Usaremos el copo de nieve para ilustrar el proceso de recursión.
99
 Una de las figuras fractales más simples es la figura de un copo de nieve. Esta figura se forma a partir de un triángulo isósceles, sustituyendo el segmento del tercio del medio de cada lado por una "V" invertida. La medida de los lados de la "V" es igual a la medida del segmento que sustituye. Usaremos el copo de nieve para ilustrar el proceso de recursión.
103
 
106
 
104
 ---
107
 ---
105
 
108
 
106
-#### Instrucciones:
109
+#### Instrucciones
107
 
110
 
108
 1. Carga a `QtCreator` el proyecto `RecursiveShapes`. Hay dos maneras de hacer esto:
111
 1. Carga a `QtCreator` el proyecto `RecursiveShapes`. Hay dos maneras de hacer esto:
109
 
112
 
112
 
115
 
113
 2. Compila y corre el programa para que veas una figura del copo de nieve construida con 3 iteraciones de la función `snowflake`. Puedes ver el código que define esta función en el archivo `snowflake.cpp` del proyecto de `Qt`.
116
 2. Compila y corre el programa para que veas una figura del copo de nieve construida con 3 iteraciones de la función `snowflake`. Puedes ver el código que define esta función en el archivo `snowflake.cpp` del proyecto de `Qt`.
114
 
117
 
115
-    En la función `main`, busca la línea en donde se declara y da valor a la variable `level`. Cambia el valor de `level` a `0` y corre el programa de nuevo. Podrás ver el triángulo que representa el caso base de la recursión para el copo de nieve. Continúa cambiando el valor de la variable `level` y corriendo el programa para que veas el proceso de la recursión y de producir figuras auto-similares.
118
+En la función `main`, busca la línea en donde se declara y da valor a la variable `level`. Cambia el valor de `level` a `0` y corre el programa de nuevo. Podrás ver el triángulo que representa el caso base de la recursión para el copo de nieve. Continúa cambiando el valor de la variable `level` y corriendo el programa para que veas el proceso de la recursión y de producir figuras auto-similares.
116
 
119
 
117
 
120
 
118
 ### Ejercicio 2 - Cajas autosimilares
121
 ### Ejercicio 2 - Cajas autosimilares
169
 [4] http://www.coolmath.com/fractals/images/fractal5.gif
172
 [4] http://www.coolmath.com/fractals/images/fractal5.gif
170
 
173
 
171
 [5] "Fractal tree (Plate b - 2)". Licensed under Public domain via Wikimedia Commons - http://commons.wikimedia.org/wiki/File:Fractal_tree_(Plate_b_-_2).jpg#mediaviewer/File:Fractal_tree_(Plate_b_-_2).jpg
174
 [5] "Fractal tree (Plate b - 2)". Licensed under Public domain via Wikimedia Commons - http://commons.wikimedia.org/wiki/File:Fractal_tree_(Plate_b_-_2).jpg#mediaviewer/File:Fractal_tree_(Plate_b_-_2).jpg
172
-
173
----
174
-
175
----
176
-
177
----
178
-
179
-