Sunteți pe pagina 1din 9

Unidad_Paso3.

Tutor:

Oscar Iván Valderrama

Grupo:

203037_40

Presentado por
LINEIDER MAPURA
C.C 94481696

Software Avanzado para Ingeniería

Ingeniería Electrónica

CEAD-Medellín

Octubre de 2019
INTRODUCCIÓN

En este trabajo se desarrolla el paso tres, practica dos del curso de software avanzado para
ingeniería, elaboramos componente practico de manera individual, el cual nos solicita un
programa creado en LabView para un instrumento virtual que realice una matriz cuadrada
de números aleatorios, esto con el fin de ir adquiriendo conocimientos y aplicándolos en la
creación de programas.
También conocer el funcionamiento y aplicación de los tipos de datos, estructuras
condicionales y estructuras cíclicas; definir algunos criterios de evaluación para todas las
propuestas, finalmente se desarrolla una propuesta metodológica donde se describen los
pasos a seguir para poder desarrollar el proyecto y solucionar el caso planteado.
Planteamiento del problema.
Una empresa de juegos didácticos virtuales, quieren implementar un juego de rompecabezas
numérico, junto con sus respectivas reglas de puntuación, para ello es necesario diseñar un
aplicativo que genere una matriz cuadrada de orden m, de números aleatorios, donde se
almacenen m-1 números enteros consecutivos, dejando una casilla vacía; el aplicativo debe
darle al usuario la posibilidad de:
 Determinar el tamaño de la matriz (m=>3 y m<=5)
 Establecer el primer número de los m-1 posibles a almacenar, (los demás serán
consecutivos).
 El usuario debe poder determinar cómo mover la casilla vacía, indicando si el
movimiento lo hace hacia arriba ó abajo, derecha ó izquierda.
 Tener la opción de no continuar con el armado del rompecabezas.
 Decidir si el armado lo dese hacer horizontal o vertical.
 Leer las reglas de la puntuación con la que se valorará su desarrollo.

Una vez el usuario termine de ordenar el rompecabezas o haya decidido no continuar con el
armado, el aplicativo debe:
 Indicar la cantidad de movimientos realizados
 Puntuación obtenida
El aplicativo, en su funcionamiento debe cumplir con las siguientes características:

 Permitir el movimiento de una celda a la vez.


 En los bordes de la matriz restringir los movimientos, es decir que de la última
columna no es posible desplazarse a la primera o viceversa, igual con las filas, de la
primera fila no es posible llegar a la última y viceversa.
 Mostar solo una matriz en pantalla, ir actualizándola a medida que se van realizando
los movimientos.
 Cuando logre ordenar el rompecabezas informarle al usuario que lo terminó.
Ejemplo de movimientos realizados para armar el rompecabezas horizontalmente.
Suponiendo que el aplicativo genera la siguiente matriz, se muestra cada uno de los cambios
que se deben dar al interior de la matriz, para mostrársela al usuario, entre cambio y cambio
se debe borrar la matriz anterior y sobrescribir en pantalla la nueva.

Valor inicial: 1
Tipo de armado: Horizontal
Matriz generada:
5 1 4
2 6 8
7 3

Movimientos
5 1 4 5 1 4 5 1 4 1 4
2 6 2 6 2 6 5 2 6
7 3 8 7 3 8 7 3 8 7 3 8
1. Arriba 2. Derecha 3. Derecha 4. Arriba
1 4 1 2 3 1 2 3
5 2 6 5 6 5 6

7 3 8 4 7 8 4 7 8
5. Derecha 30. Arriba 31. Izquierda
1 2 3 1 2 3 1 2 3 1 2 3
5 6 4 5 6 4 5 6 4 5 6
4 7 8 7 8 7 8 7 8
32. Izquierda 33. Abajo 34. Derecha 35. Derecha

Para dar solución a este caso planteado, debemos tener claros algunos conceptos que
describiré a continuación y algunos elementos que usare para dar solución al problema
planteado.
Un array es una colección de datos todos ellos del mismo tipo, puede tener una o más
dimensiones y hasta 2 elementos por dimensión, según la memoria disponible.
Un array puede ser de cualquier tipo excepto otro array, chart o graph . Se accede a cada
elemento de un array mediante un índice, el cual es cero bases, es decir, va de 0 a N-1 donde
N es el número de elementos.
La creación de arrays de control o indicadores en el panel frontal se hace mediante la
combinación del icono array shell de la paleta Array & Cluster del menú controls, con un
objeto de datos, que puede ser numérico, booleano o string.
Un array de n-dimensiones necesita de n índices (cero-base) para localizar un elemento. En
la figura siguiente hay un array de N columnas por M filas, conteniéndolo N veces M
elementos.
Se pueden añadir dimensiones a un array control o indicador de dos maneras: Desplegando
el menú de index display (visualizador del índice) y a continuación, escogiendo la opción
Add Dimensión (añadir dimensión) o situando el cursor sobre el index display y arrastrando
hacia abajo tantas dimensiones como queramos.

Podemos indexar e introducir elementos dentro de los arrays en bordes de las estructuras For
Loop y White Loop de manera automática. Esto es lo que se llama auto-indexing
(autoindexado). La figura inferior presenta un ejemplo de ello; cada iteración crea el siguiente
elemento del array; una vez que se ha completado, el array pasa al indicador. Observar que
el cable se hace más grueso al cambiar a array.

Si queremos introducir elementos en un array de dos dimensiones podríamos usar un For


Loop dentro de otro For Loop. El interior crea los elementos de columna, mientras que el
exterior crea los elementos de fila.
En la actividad anterior se dieron algunas ideas de estructura para dar solución al programa
principal planteado una de las ideas contenía el siguiente algoritmo, que contiene ideas
claras y concretas para dar solución al problema con las siguientes condiciones:
Información de entrada
1. Valor del orden de la matriz.
2. Valor del número inicial de la serie.
3. Sentido de orientación de la matriz.
4. Estado de operación del botón de paro.
5. Dirección de desplazamiento de la casilla vacía.
Procesos
1. Crear matriz cuadrada con el valor de entrada.
2. Generar la matriz con los valores desde la cifra inicial en cantidad del orden menos
uno en orden aleatorio.
3. Determinar la necesidad de trasponer la matriz si el sentido es vertical o dejar la
orientación original.
4. Terminar la función al ser activado botón de paro.
5. Generar una matriz nueva según la dirección de desplazamiento oprimida.
Información de entrada.
1. Presentar una matriz con los datos de entrada.
2. Botones de desplazamiento y paro activados.
3. Información del objetivo del juego.
4. Reglas de puntaje.
5. Puntaje final y cantidad de desplazamientos operados.
Conclusiones
 Es de gran importancia conocer y tener un buen uso de la aplicación Labview para el
desarrollo de las actividades propuesta en clase.
 Es necesario participar y aportar en los foros de la clase ya que estos nos permiten
también desglosar diferentes ideas necesarias para la actividad.
 Debemos conocer y apropiarnos de los conceptos sugeridos en la unidad para poder
desarrollar a cabalidad las actividades sugeridas
Referencias Bibliograficas

 Chacón, R. R. (2005). La instrumentación virtual en la enseñanza de la Ingeniería


Electrónica. Acción Pedagógica. 11(1): 80-89, 2002. Mérida, VE: D - Universidad
de los Andes Venezuela. Pág. 80-86. Recuperado de:
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=10444669
 Babún, A. L. (2009). Instrumentos virtuales al servicio de la enseñanza -
aplicaciones en el estudio del espectro ensanchado en la carrera de
telecomunicaciones. Córdoba, AR: El Cid Editor | apuntes. Pág. 5-8. Recuperado
de:
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=10327492
 Lajara, V. J. R. (2007). LabVIEW: entorno gráfico de programación. Barcelona, ES:
Marcombo. Capítulo 1. pág. 3-36. Recuperado
de:http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=10204
103
 National Instruments Corporation (2015) [Software LabView]. Recuperado de:
https://lumen.ni.com/nicif/esa/acadevallvdl/content.xhtml
 Monroy, J. (2018). Fundamentos de programación de instrumentos virtuales.
[Archivo de video] Recuperado de: http://hdl.handle.net/10596/22785

S-ar putea să vă placă și