ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Algoritmos y Programación


Enviado por   •  27 de Junio de 2019  •  Prácticas o problemas  •  1.144 Palabras (5 Páginas)  •  169 Visitas

Página 1 de 5

[pic 1]

Universidad Anáhuac México Norte

Facultad de Ingeniería

Algoritmos y Programación

Grupo B

Proyecto final – Mastermind

Hugo Efraín Castellanos Alcántara

00318759

Noviembre 01, 2017

Objetivo

Aplicar todos los conocimientos adquiridos durante el curso de algoritmos y programación a un proyecto integrador.

Datos del proyecto

Cuenta: a00318759

Password: n0t3l4s4b35

Nombre del proyecto: Proyecto_1

Correo: hugocastellanos18@hotmail.com

Planteamiento del problema

El Master Mind es un juego de ingenio que está pensado solamente para dos personas y se juega con un tablero realizado expresamente para él.

En dicho tablero existe un número de agujeros o intentos que puede variar aunque normalmente consta de diez filas de cuatro agujeros (donde se colocan las fichas de color) acompañados por cuatro agujeros suplementarios donde se colocan las clavijas blancas o negras según corresponda.

A su vez el tablero también permite colocar el código secreto de colores aunque de tal forma que solamente es visible para la persona que propone el código.

El jugador que propone el código (de ahora en adelante lo llamaremos "codificador") debe poner en secreto cuatro clavijas sin que el otro jugador lo vea (a este lo definiremos como "descodificador"). Para ello puede realizar la combinación que más desee, así como también es permitido usar dos o más clavijas de un mismo color. Con este sistema se calcula que existen hasta 1.296 combinaciones distintas.

El objetivo del juego está en que el descodificador deberá repetir exactamente la misma secuencia de colores que ha prepuesto el codificador. Aunque a priori ello puede parecer fácil, en realidad se trata de una auténtica batalla de lógica e ingenio entre ambas partes.

Cada vez que el descodificador inserta una fila con clavijas de colores, el codificador insertará en los agujeros secundarios una serie de clavijas negras y/o blancas según el siguiente código:

- Clavija negra: La clavija insertada tiene el color correcto y se ha situado en el sitio adecuado.

- Clavija blanca: Aunque la clavija insertada tiene el color correcto, esta se ha insertada en una posición inadecuada.

- Agujero sin clavija: No se ha acertado el color de la clavija.

El juego es ganado por el jugador que necesita menos intentos a la hora de descubrir el código de su rival.

Por último comentar que una de las variantes más usuales de este reglamento es establecer un tiempo límite para insertar las clavijas en cada hilera, lo cual añade emoción al juego así como rapidez.

Código

' Gambas class file

Public Sub Form_Open()

Me.Background = &00FFFF&

End

Public Sub Button1_Click()

Juego.Show()

End

Public Sub Button2_Click()

FMain.Close()

Message.Info("Gracias por usar este juego")

End

Public Sub Button3_Click()

instrucciones.Show()

End

' Gambas class file

Public Sub Form_Open()

p1.tag = "c1.png"

 p1.Picture = Picture["c1.png"]

p2.tag = "c2.png"

 p2.Picture = Picture["c2.png"]

p3.tag = "c3.png"

 p3.Picture = Picture["c3.png"]

p4.tag = "c4.png"

 p4.Picture = Picture["c4.png"]

p5.tag = "c5.png"

 p5.Picture = Picture["c5.png"]

p6.tag = "c6.png"

 p6.Picture = Picture["c6.png"]

End

Public Sub p1_MouseDrag()

Drag.icon = Me.Picture

p1.Drag(p1.tag)

End

Public Sub p2_MouseDrag()

Drag.icon = Me.Picture

p2.Drag(p2.tag)

End

Public Sub p3_MouseDrag()

Drag.icon = Me.Picture

p3.Drag(p3.tag)

End

Public Sub p4_MouseDrag()

Drag.icon = Me.Picture

p4.Drag(p4.tag)

End

Public Sub p5_MouseDrag()

Drag.icon = Me.Picture

p5.Drag(p5.tag)

End

Public Sub p6_MouseDrag()

Drag.icon = Me.Picture

p6.Drag(p6.tag)

End

Public Sub p7_Drop()

p7.Picture = Picture[Drag.data]

End

Public Sub p8_Drop()

p8.Picture = Picture[Drag.data]

End

Public Sub p9_Drop()

p9.Picture = Picture[Drag.data]

End

Public Sub p10_Drop()

p10.Picture = Picture[Drag.data]

End

Public Sub p11_Drop()

p11.Picture = Picture[Drag.data]

End

Public Sub p12_Drop()

p12.Picture = Picture[Drag.data]

End

Public Sub p13_Drop()

p13.Picture = Picture[Drag.data]

End

Public Sub p14_Drop()

p14.Picture = Picture[Drag.data]

End

Public Sub p15_Drop()

p15.Picture = Picture[Drag.data]

End

Public Sub p16_Drop()

p16.Picture = Picture[Drag.data]

End

Public Sub p17_Drop()

p17.Picture = Picture[Drag.data]

End

Public Sub p18_Drop()

p18.Picture = Picture[Drag.data]

End

Public Sub p19_Drop()

p19.Picture = Picture[Drag.data]

End

Public Sub p20_Drop()

p20.Picture = Picture[Drag.data]

End

Public Sub p21_Drop()

p21.Picture = Picture[Drag.data]

End

Public Sub p22_Drop()

p22.Picture = Picture[Drag.data]

End

Public Sub p23_Drop()

p23.Picture = Picture[Drag.data]

End

Public Sub p24_Drop()

p24.Picture = Picture[Drag.data]

End

Public Sub p25_Drop()

p25.Picture = Picture[Drag.data]

End

Public Sub p26_Drop()

...

Descargar como (para miembros actualizados)  txt (10.2 Kb)   pdf (141.5 Kb)   docx (235.1 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com