|
| |
Tratamiento al concepto de ciclos según los presupuestos de la Programación Visual
Resumen: En los momentos actuales se introduce en el reuniversitario la enseñanza de la programación visual,dentro de esta asignatura los lazos son un tema de complejidad y de muy necesaria comprensión pues son una estructura algorítmica básica que se presenta en la solución de disímiles problemas por todo esto el objetivo del presente artículo es brindar algunas consideraciones técnicas y metodológicas con respecto a la enseñanza de los lazos en el lenguaje de programación Visual Basic.
Publicación enviada por Lic. Vivian Hondal Sánchez
ÍNDICE
Introducción
Desarrollo
Conclusiones
Referencias bibliográficas
Bibliografía
RESUMEN
En los momentos actuales se introduce en el preuniversitario la enseñanza de la programación visual, dentro de esta asignatura los lazos son un tema de complejidad y de muy necesaria comprensión pues son una estructura algorítmica básica que se presenta en la solución de disímiles problemas por todo esto el objetivo del presente artículo es brindar algunas consideraciones técnicas y metodológicas con respecto a la enseñanza de los lazos en el lenguaje de programación Visual Basic.
PALABRAS CLAVES
-Programación Visual
-Concepto de ciclos
-Didáctica de los ciclos
INTRODUCCIÓN
La inserción de la nueva tecnología en la Informática en la escuela media superior determinó un conjunto de cambios en los programas de la asignatura informática. Estos cambios llevaron a que predomine la enseñanza del sistema operativo Windows y los sistemas de aplicación, quedando la enseñanza de la programación establecida en el 12. grado del preuniversitario, en los institutos politécnicos de Informática y en las carreras de perfil informático.
En la escuela tradicional cubana se mantiene una filosofía de enseñanza de los lenguajes de programación (nivel 1) basada en las estructuras algorítmicas básicas de programación (lineal, alternativa y repetitiva) todas ellas utilizando como estructura de datos las variables simples o estándares. Después en un segundo nivel sobre la base algorítmica anterior se introducen estructuras de datos abstractas como son: arreglos, registros y ficheros. En un tercer nivel, ya en la nueva tecnología, se introduce la conexión del lenguaje de programación con bases de datos gestionadas en un Sistema de Gestión de Bases de Datos. Es bueno destacar que en los dos primeros niveles, cuando se trabaja con la Interfaz Gráfica de Usuario se introducen objetos visuales.
En todos los niveles antes mencionados se trabaja siguiendo un enfoque problémico donde se integran un sistema de acciones encaminadas a desarrollar la habilidad para resolver problemas, que en esencia conforman un programa heurístico general para el desarrollo del curso de Informática.
Ejemplo de Programa heurístico general
1- Determinar los elementos formales que integran el problema.
2- Determinar y describir los pasos principales de la solución.
3- Seleccionar las opciones necesarias y suficientes (para Sistemas de Aplicación), o codificar los pasos principales del algoritmo (para Lenguajes de Programación).
4- Controlar los resultados.
5- Introducir las acciones correctivas.(1)
Las ideas anteriormente expresadas se mantienen en el actual plan de estudio, por lo tanto son válidas; pero desde el punto de vista metodológico existen algunas diferencias que serán presentadas en el desarrollo del artículo.
DESARROLLO
En el preuniversitario, el programa de informática para el grado 12. asume la enseñanza de la programación (Nivel 1 con interfaz gráfica de usuario) y se introduce un nuevo paradigma: la programación conducida por eventos y el lenguaje Visual Basic, es decir se estudian los contenidos referidos a las estructuras lineal, alternativa y repetitiva bajo los criterios de la Programación Conducida por Eventos, o sea, cada vez que se produce un evento se envía un mensaje al sistema operativo, el sistema procesa el mensaje y lo transmite a las demás ventanas. Muchos de los mensajes los controla automáticamente el Visual Basic mientras que otros se tratan como procedimientos de evento para su comodidad. Esto permite crear rápidamente eficaces aplicaciones sin tener que tratar detalles innecesarios.
La metodología para resolver problemas utilizando la programación conducida por eventos que proponemos se utilice es la desarrollada por el equipo de investigadores del proyecto ramal “Una concepción metodológica para la enseñanza de la computación en el era de las TIC en el preuniversitario” y que mostramos a continuación:
Paso 1
Análisis del problema
1. Extraer los datos que se tienen de entrada.
2. Extraer lo que se quiere obtener.
3. Buscar una primera aproximación de cómo se logra convertir la entrada en salida.
Paso 2
Establecer la interfaz visual del problema
1. Diseñar la forma.
2. Diseñar los controles en la forma.
Paso 3
Establecer las estructuras de datos
1. Definir las variables de entrada, salida y auxiliares, su alcance.
Paso 4
Establecer los eventos y su código
1. Definir los posibles eventos a los que responderán cada objeto.
2. Realizar los algoritmos de cada evento.
Paso 5
Puesta a punto
1. Guardar el proyecto.
a. Se recomienda crear una carpeta y dejar que el nombre de los archivos sea colocado automáticamente por el medio ambiente integrado Visual Basic.
b. Probar el proyecto con distintos juegos de datos previamente analizados para ver si se obtuvo un resultado correcto. En caso negativo establecer acciones correctivas.
Si analizamos detalladamente los anteriores 5 pasos vemos que responden al programa heurístico general brindado por el Dr. Expósito.
Es bueno destacar que la programación visual surge con el objetivo de facilitar y hacer más amigable la interfaz hombre – máquina, garantizando la posibilidad de crear aplicaciones que permitan emplear sin grandes complicaciones los recursos estándares del interfaz gráfico del sistema operativo Windows.
En el Programa para la asignatura se da especial atención al concepto Evento,
definiendo
Evento: suceso que puede ocurrir en cualquier momento.
Un evento es un hecho concreto que afecta la ejecución del programa, pero que el instante de su ocurrencia no puede ser previsto con exactitud por el diseñador del programa. Nadie puede, por ejemplo, prever en que momento el usuario del programa va a oprimir un botón, o va a accionar sobre una barra de desplazamiento. Puede pasar, inclusive, que el usuario nunca oprima el botón. Y no se debe tratar de controlar por la fuerza estas situaciones. Un programa para Windows debe ofrecer un interfaz abierto, donde el usuario pueda actuar libremente. El programa debe esperar a que tenga lugar el evento y cuando esto suceda, reaccionar en consecuencia.
Si antes nos preocupábamos solo por la elaboración de un algoritmo eficiente y su codificación, ahora es también muy importante la elaboración de interfaces de usuario que respondan a los estándares ya establecidos por el sistema operativo Windows.
La unidad referida al estudio de los lazos continúa teniendo una marcada importancia ya que en ella se estudian algoritmos básicos como:
- Algoritmos para acumular sumas.
- Algoritmos para acumular productos.
- Promedios y Por Cientos.
- Determinar el mayor o el menor.
- Determinar singularidad de un dato.
- Algoritmo de búsqueda secuencial.
El dominio de estos algoritmos es imprescindible para un programador, lo cual hace que su contenido continúe siendo complejo y difícil para ser asimilado por nuestros estudiantes.
Teniendo presentes las características de la programación visual conducida por eventos algunos de los criterios metodológicos y técnicos hasta ahora considerados esenciales en el estudio de los lazos o ciclos quedan obsoletos.
En la enseñanza de los ciclos se utilizaban los siguientes criterios
El ciclo o lazo en Computación permite que una secuencia de pasos se repita tantas veces sea necesario, bajo condiciones o conociendo el número de repeticiones, es decir, existe la presencia de un algoritmo o instrucciones de un programa que se ejecutan más de una vez. No es programable un ciclo que se repita indefinidamente, por lo tanto es necesaria una condición para terminar la ejecución del lazo en dependencia de las circunstancias establecidas por el enunciado del problema.
Según estos criterios los ciclos pueden ser clasificados de la siguiente
forma
1. Ciclo condicionado
es un grupo de pasos del algoritmo, o de instrucciones del programa, que se pueden ejecutar más de una vez, de acuerdo a si se cumplen o no determinadas condiciones. Dentro de este tipo de ciclo se presentan dos situaciones:
1.1. Primero se realiza el chequeo de la condición, lo que impide que el último se procese, es decir, este dato no pertenece al conjunto que se desea procesar, su existencia solo se debe a la misión de detener la ejecución del ciclo. Además en este tipo de ciclo puede ser que no se ejecute el proceso repetitivo ninguna vez.
1.2. Se realiza el proceso y se chequea después la condición, por lo que el último dato se procesa dentro del conjunto y obligatoriamente se ejecuta al menos una vez el proceso repetitivo.
Los lenguajes estructurados como el Pascal destinan instrucciones para el trabajo con los ciclos condicionados, estableciendo el While - Do para definir el bloque de sentencias de la estructura que se ejecutará repetidamente en tanto la expresión lógica sea cierta y el Repeat - Until para definir el bloque de sentencias que se ejecutará repetidamente hasta que la expresión lógica llegue a ser cierta.
2. Ciclos determinados
Se conoce la cantidad de datos que se van a procesar.
Casi todos los lenguajes tanto estructurados como no estructurados poseen una estructura para la ejecución de este ciclo. (la mayoría encabezada por la instrucción for).
Criterios técnicos en la nueva tecnología
De acuerdo con los estándares establecidos por Windows para la interfaz de usuario, resulta incongruente dar solución a los problemas por las tres vías tradicionales:
1. Pidiendo que se realice la entrada de un dato con el solo objetivo de detener la ejecución del ciclo.
2. Encargando al usuario que evite la entrada del dato seleccionado para finalizar la ejecución del ciclo hasta que se hayan procesado todos los datos.
3. Procesando un número determinado de datos aún cuando el usuario desee terminar.
¿Cómo abordar la solución de estos problemas de acuerdo a los estándares establecidos para la interfaz gráfica de usuario?
Los lenguajes visuales brindan la posibilidad de implementar un ciclo visual o controlado de forma manual por el usuario.
¿Cómo implementar un ciclo visual?
1. La entrada de datos.
2. Controlar la entrada (para permitir repetir) por un botón sobre el que nos posicionamos y con solo dar clic, se realizan entonces los procesos repetitivos que incluyen:
2.1. El trabajo de los acumuladores e instrucciones que es necesario repetir
2.2. Se limpian los objetos utilizados en la entrada de los datos y se le da el foco a la primera entrada.
¿Cómo pararlo?
Todo está bajo el control del usuario, el cual, con solo dar clic sobre otro objeto y ordenar alguna operación provoca el fin del ciclo.
El programador es el encargado de realizar, el código asociado al evento clic del botón que controla las operaciones que se repiten de acuerdo a las necesidades del problema y su solución. En el caso de operaciones de salida de la información y operaciones de cálculo finales como por ejemplo: promedios o cálculos porcentuales debemos asociarlos al evento clic de otro botón.
Implementar un ciclo visual permite manipular las listas de datos sin tener que dedicar tiempo a analizar el tipo de ciclo en dependencia del tipo de lista, pues el ciclo es controlado por el futuro usuario de la aplicación mediante el botón que realiza el lazo.
A continuación ofrecemos un ejemplo
Escogemos como ejemplo el clásico promedio de una lista de números, este problema es omnipresente en la mayoría de los textos de programación más utilizados históricamente en la escuela media cubana, por ejemplo: Fundamentos de computación(2), Fundamentos de computación(3).
Es importante destacar que el profesor al contextualizar el problema del promedio tiene la posibilidad de realizar trabajo educativo; pues puede escoger como datos numéricos alguna información que se preste para un análisis de los datos, incluso puede vincular este problema al propio uso de la informática pues es factible orientar buscar los datos en alguno de los software instalados en la escuela.
Solución del problema
Paso 1
Análisis del problema
1. El problema aporta como dato de entrada varios números.
2. Como salida se desea el promedio de los números entrados.
3. Para promediar debemos totalizar y contar los números entrados, el promedio es igual al total dividido por la cantidad.
4. Como al final para calcular el promedio solo necesitamos el total y la cantidad no tenemos que tener los números almacenados y podemos entonces en una misma caja de entrada ir entrando los números de uno en uno e ir totalizando y contando.
Paso 2
Establecer la interfaz visual del problema
Objetos y propiedades
|
Objeto |
Caption |
Text |
|
Label 1 |
Entrar número |
|
|
Text1 |
|
Vacío |
|
Label 2 |
Promedio |
|
|
Text2 |
|
Vacío |
|
Botón 1 |
Próximo Número |
|
|
Botón 2 |
Calcular Promedio |
|
Paso 3
Establecer las estructuras de datos
|
Variable |
Tipo |
Alcance |
Valor inicial |
|
num |
double |
Local (botón 1) |
|
|
suma |
double |
Global a la forma |
0 |
|
cantidad |
integer |
Global a la forma |
0 |
|
Promedio |
double |
Local (botón 2) |
|
Paso 4
Establecer los eventos y su código
|
Objeto |
Evento |
Idea del código |
|
Botón 1 |
Clic |
-
Se define la variable
local num (dim num as double)
-
Se asigna el valor
tecleado en la caja de texto 1 (convertido a número) a la variable
num. (num= val(text1.text))
-
Se acumula la suma (suma =
suma + num)
-
Se cuenta (cantidad =
cantidad +1)
-
Se limpia la caja de texto
1 (text1.text="")
-
Se da el foco a la caja de
texto 1 (text1.setfocus)
|
|
Botón 2 |
Clic |
-
Se define la variable
local promedio (dim promedio as double)
-
Se asigna a promedio su
fórmula (promedio = suma/cantidad)
-
Se visualiza en la caja de
texto 2 el promedio calculado convertido a texto
(text2.text =str(promedio)
|
|
En la parte general de la
forma
|
(dim suma as double
dim cantidad as integer)
|
Paso 5
Puesta a punto
1- Recomendamos crear en la carpeta Mis Documentos una subcarpeta llamada Promedio y dentro de ella guardar le proyecto. (tanto la forma como el código).
2- Sugerimos que según el contexto del problema se tengan preparados juegos de datos y su respuesta para verificar la veracidad de la solución brindada al problema.
CONCLUSIONES
Con el presente trabajo se ha brindado una ayuda esclarecedora (apoyada con un ejemplo) a los profesores de computación para enfrentar la enseñanza de los ciclos desde el punto de vista de la programación visual.
Consideramos que toda la información referente a los ciclos visuales controlados por el usuario de la aplicación es muy útil ya que es una forma novedosa de darle tratamiento a esta estructura algorítmica básica.
REFERENCIAS BIBLIOGRAFICAS
-(1) Elementos de Metodología de la Enseñanza de la Informática. Carlos Expósito Ricardo y coautores, Editorial Pueblo y Educación 2001, p 62.
-(2) Fundamentos de computación. Dr. León Febles Cordero, p 143.
-(3)Fundamentos de computación. Cuaderno de ejercicios Lic. Antonio E. Ramírez Caballero, p47
BIBLIOGRAFIA
- Programación en Visual Basic. Laboratorio CIAT. Venezuela. 1999.
- Programación en lenguaje Msx Basic. Libro de texto escuela media. Mined. La Habana. 1994.
- Programación en Pascal. Byron S. Gottfried. La Habana. 1992
- Turbo Pascal. The Complete Reference. Sthepen K. O´ Brian. Mined. La Habana. 1993.
- Orientaciones metodológicas para impartir la computación. 10. Grado. Folleto en disco. Mined. La Habana. 1995.
- El tratamiento metodológico a los ciclos. Dr. Carlos Expósito. Folleto en disco. Apuntes para un libro de texto.
AUTORA
Lic. Vivian Hondal Sanchez
e-mail:vivian@ispss.rimed.cu
COAUTORES
MsC. Eduardo Hernández Martín.
e-mail:martin@ispss.rimed.cu
Lic. Niurka Gonzalez Acosta
e-mail:ngonzalez@ispss.rimed.cu
Centro: I.S.P. Capitán Silverio Blanco Núñez.
Departamento: Informática
Facultad: Media Superior.
Compartir 
Publicación enviada por Lic. Vivian Hondal Sánchez
Contactar mailto:vivian@ispss.rimed.cu
Código ISPN de la Publicación EEVEuFuVVkXFvESwNI
Publicado Tuesday 27 de June de 2006
Ultimas Publicaciones en ilustrados.com
ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal.
|