Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CONSTRUCCIÓN COLABORATIVA
ENTREGADO A:
JUAN MONROY
REALIZADO POR:
JESUS DAVID HERAZO
GRUPO: 203037_27
En las últimas décadas la humanidad ha avanzado con enormes pasos en el tema de la tecnología
creando diversos dispositivos y aplicaciones que nos facilitan nuestra vida, además de esto, a
medida que pasa el tiempo los dispositivos cada vez son de menor tamaño dando así una mayor
facilidad para transportarlos como es el caso de los computadores portátiles. Sin embargo, una
rama de esta era tecnológica consiste en el mundo de los videojuegos, y es que no solo esto ha
tenido un gran impacto a esta generación donde poco a poco vemos a multitud de personas
En este informe se presenta un proyecto el cual consiste crear un instrumento virtual utilizando
aplicativo pone de manera aleatoria los barcos en la matriz, y el objetivo del juego será hundir
todos los barcos donde este mismo ira indicando que barcos se hundieron, la puntuación y los
disparos realizados.
ESTUDIANTE LINK VIDEO
JESUS DAVID HERAZO https://youtu.be/ZtX27RKouHk
Imagen 1
FUNCIONAMIENTO
filas y columnas con las que quiera comenzar a jugar, para esto deberá activar los
interruptores que están indicados con “FILAS” y “COLUMNAS” según lo desee, ver imagen
Imagen 2
2. Seleccionar los barcos: El usuario deberá indicar que barcos quiere ubicar dentro de la
Imagen 3
3. Dar al botón de START: El usuario una vez haya definido el orden de la matriz, deberá
pulsar el botón de “START” para comenzar el juego (cabe aclarar que si el usuario no ha
Imagen 4
Una vez haya hecho esto, la matriz se actualizará al orden elegido por el usuario y marcará como
Imagen 5
puntuación según corresponda (le haya dado a un barco o no), y también irá mostrando la
5. Hundir los barcos: Una vez el usuario haya hundido alguno de los barcos, el aplicativo
Imagen 7
Así mismo lo hará con cada barco que se hunda independientemente de con que barcos haya
decidido jugar o que barco haya hundido, una vez se hayan hundido todos los barcos el juego
6. Rendirse: Si por alguna razón el usuario decide rendirse, el aplicativo marcará el fin del
Imagen 8
CÓDIGO FUENTE
A continuación se irá explicando el código fuente generado en LabVIEW por partes debido a lo
PARTE 1:
En esta primera parte se generó la matriz donde se iba a desarrollar el juego, cabe aclarar que
esta matriz era definida por el usuario mediante operaciones booleanas (encendiendo leds):
Para hacer esta parte se utilizó una teoría de lógica de compuertas donde se implementó un
multiplexor [1], el cual dependiendo de la entrada y de un selector, deja pasar cierta señal (en
este caso el selector serían las salidas booleanas de los indicadores 9 y 10).
Si el usuario selecciona ambos números al mismo tiempo, es decir, si selecciona 8 filas y 9 filas
El programa no saldrá del ciclo wire hasta que el usuario seleccione correctamente el tamaño de
la matriz, decida que barcos posicionar (al menos 1) y posteriormente presione “START”.
PARTE 2:
por el usuario. Dentro del ciclo wire ingresan los dos valores correspondientes al tamaño de la
matriz, donde se generan dos números aleatorios que van de 1 hasta el número de filas de la
matriz, y el otro va desde 1 hasta el número de columnas de la matriz con el fin de definir una
posición aleatoria dentro de ella para poder posicionar el barco, además se genera un número
aleatorio entre 1 y 4 por fuera del ciclo wire para saber si el barco ira posicionado de izquierda a
derecha, de derecha a izquierda, de abajo arriba o de arriba abajo con respecto a la posición
matriz (por ejemplo que se escoja la posición aleatoria fila 10 columna 10, y la orientación sea
vertical y hacia abajo) en este caso se volverá a generar otra posición al azar hasta que el barco
Una vez salga del ciclo wire, en el ciclo for se irá poniendo con un 1 la posición del barco
Lo mismo se hace para generar los otros dos barcos, la única diferencia es que hay que tener en
cuenta que no coincidan con la posición de los barcos generados anteriormente, además de que
todo el proceso de los 3 barcos por separado está encerrado con una estructura case, donde solo
Barco de 3 posiciones:
PARTE 3:
El programa verifica si donde el usuario disparo hay un barco o no y se marca con otro color.
Podemos ver en la parte izquierda que se verifica si el usuario quiere disparar, el usuario escoge
la posición y hasta que no presione el botón disparar no va a salir del ciclo. Una vez sale de ese
ciclo verificará si en esa posición se encuentra un barco, es decir, si la matriz que contiene la
información en esa posición se encuentra un uno, si esto sucede entonces en la matriz de colores
actualizando a medida que transcurre el juego, además, la matriz inicial será una matriz que tiene
En esta parte del programa se verifica si los barcos han sido hundidos en su totalidad.
Esta parte del circuito se encuentra en el mismo ciclo wire que la anterior parte donde se
La información que recibe el ciclo son 6 vectores, los dos primeros contienen la información de
las filas y columnas del primer barco, los siguientes 2 vectores contienen la información de filas
y columnas del segundo barco, y las otras dos contienen la información del tercer barco. Primero
hay que marcar con un 0 en la matriz donde el usuario ha disparado, una vez hecho esto se
verifica si en esa posición había un barco o no, y si todas las posiciones del barco están marcadas
correspondiente, posteriormente de hace una compuerta AND con la salida de los leds, y si todos
En esta parte se muestran los mensajes en pantalla tales como; la puntuación, disparos realizados,
mensaje del fin del juego, exportación de los datos y la opción rendirse
Puntuación:
Se verifica si la posición escogida por el usuario para disparar contiene un barco y luego se le
sumarán 3 puntos, además de que se le sumaran puntos adicionales si hunde un barco completo
Disparos:
Este estará dentro del ciclo wire y cada vez que se repita un ciclo aumentará en uno la cantidad
de disparos.
Este mensaje se mostrara cuando el botón de rendirse este en 1, o todos los barcos estén
Rendirse:
Este será el botón de rendirse, cuando este en 1 se saldrá de ambos ciclos y terminará el juego.
Exportación: Se unirán los datos de puntuación e intentos realizados en un vector para poder
ingresarlos a Excel
CONCLUSIÓN:
de un ingeniero electrónico.
Este proyecto transcurrió con total éxito, se desarrolló paso a paso cumpliendo con lo establecido
[1] Sistemas digitales, principios y aplicaciones. Décima edición Ronald J. Tocci, Neal S.
Electrónica. Acción Pedagógica. 11(1): 80-89, 2002. Mérida, VE: D - Universidad de los Andes
de: https://lumen.ni.com/nicif/esa/acadevallvdl/content.xhtml
de: http://hdl.handle.net/10596/12742