Pág.47 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php
El procedimiento simetríaCuadrado (1) está compuesto solamente
por una estructura secuencial que realiza el dibujo de un cuadrado
cuyos lados miden 100.
para simetríaCuadricula
simetríaCuadrado
izquierda 90
simetríaCuadrado
izquierda 90
simetríaCuadrado
izquierda 90
simetríaCuadrado
izquierda 90
fin
El procedimiento simetríaCuadricula (2) está compuesto por una
estructura secuencial que dibuja cuatro cuadrados con lados
adyacentes entre sí. Esta es una figura simétrica ya que si se dobla
por la mitad, ambas mitades coinciden. Para construir esta
cuadricula no fue necesario escribir un procedimiento con el código
para dibujar cuadro cuadrados; en realidad, el procedimiento
simetríaCuadricula no realiza ningún dibujo, lo que hace es llamar
cuatro veces el procedimiento simetríaCuadrado que es el que
realmente dibuja un cuadrado cada vez que se invoca. Para que los
cuadrados sean adyacentes, se necesita girar la tortuga 90 grados a
la izquierda después de cada llamada al procedimiento
simetríaCuadrado.
para simetríaEstrella
limpia
cp
simetríaCuadricula
derecha 45
simetríaCuadricula
fin
El procedimiento simetríaEstrella (3) también está compuesto
únicamente por una estructura secuencial que permite dibujar una
estrella perfectamente simétrica. Este procedimiento llama dos veces
al procedimiento simetríaCuadricula que a su vez, cada que es
invocado, llama cuatro veces al procedimiento simetríaCuadrado.
Para lograr el efecto de estrella, luego de llamar la primera vez al
procedimiento simetríaCuadricula, se gira la tortuga 45 grados, antes
de llamar el mismo procedimiento por segunda vez.
Las siguientes son las instrucciones equivalentes en
Scratch para elaborar la misma estrella:
Pág.48 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php
http://scratch.mit.edu/projects/jualop/42800
Muchos estudiantes logran construir la figura del
procedimiento simetríaEstrella utilizando gran cantidad
de comandos que se repiten sin estructura alguna
(mediante experimentación). Es muy importante que
ellos reflexionen sobre las ventajas que ofrecen los
procedimientos cuando se los utiliza a manera de
objetos que cumplen con una función determinada
(dibujar un cuadrado, calcular un área, etc). Una tarea
que debe realizarse varias veces es candidata ideal para
tratarla como un procedimiento. Con la utilización de
parámetros se pueden cambiar algunos valores cada
vez que se ejecute esa tarea. De esta manera, si
necesitamos dibujar varios cuadrados de diferentes
tamaños, lo más adecuado será construir un
procedimiento con el valor de Lado como parámetro y
ejecutarlo varias veces asignando a este el valor del
Lado del cuadro a dibujar, cada vez que se ejecute (ver
el ejemplo 3-4).
Este ejemplo ilustra la construcción de figuras simétricas
mediante la utilización de procedimientos invocados
desde otros procedimientos. El concepto de simetría es
muy importante tanto en disciplinas como matemáticas y
arte como en la cultura general del estudiante. La
programación de computadores puede apoyar muy
efectivamente el afianzamiento en el niño del concepto
que este tiene de simetría, alcanzado en forma intuitiva
a través del espejo. “Los espejos son para los niños su
primera experiencia y permiten examinar muchos
aspectos de las simetrías. Se puede uno preguntar
acerca de la inversión mutua entre derecha e izquierda,
acerca de las distancias entre el objeto y su imagen en
el espejo, lo que ocurre cuando se mueve el objeto o se
mueve el espejo, o lo que ocurre cuando estos giran”
Fletchet, T. J. citado por Cajaraville (1989).
Por otra parte, la construcción de figuras como estas
requiere un dominio espacial del estudiantes ya que es
mucho más difícil reproducir una acción correctamente
en el pensamiento que llevarla a cabo en el nivel de la
conducta. Por ejemplo, es más sencillo moverse de un
lugar a otro en un espacio físico o dar vueltas en torno a
objetos que representar mentalmente esos movimientos
con precisión o representarlos en un plano e invertir
mentalmente las posiciones de los objetos haciendo
girar el plano (Piaget,1993).
Por último, en este ejemplo se utilizan más comandos
de los que realmente se requieren. Como el objetivo no
es presentar códigos optimizados sino más bien que el
estudiante se familiarice con los comandos disponibles,
más adelante, cuando se vea la estructura repetitiva, el
docente puede repetir este ejemplo y utilizar el comando
“repetir”. Posteriormente, promover la reflexión de los
estudiantes sobre la optimización del código y las
múltiples maneras que hay en programación para
realizar la misma tarea.
EJEMPLO 3-6
Escribir un procedimiento para calcular el área de cualquier triángulo
rectángulo. En él se debe pedir al usuario que ingrese los valores de
la Altura y la Base del triángulo.
R/.
ANÁLISIS DEL PROBLEMA
Formular el problema: Ya está claramente planteado.
Resultados esperados: Un procedimiento que permita calcular el
área de cualquier triángulo rectángulo.
Datos disponibles: Base y Altura del triángulo (se deben solicitar al
usuario). El estudiante debe preguntarse si sus conocimientos
actuales de matemáticas le permiten resolver este problema; de no
ser así, debe plantear una estrategia para obtener los conocimientos
requeridos.
Restricciones: Los valores de base y altura son variables y se
deben solicitar al usuario.
Procesos necesarios: definir variables; asignar el valor 2 a la
constante div; solicitar al usuario el valor de la altura del triángulo;
solicitar al usuario el valor de la base; aplicar la fórmula de área;
mostrar el resultado.