Programación C++

Páginas: 8 (1974 palabras) Publicado: 25 de febrero de 2015
AJEDREZ EN VISUAL C++

Introducción

A mi entender, la mejor forma de aprender y comprender algoritmos de programación es programando juegos. Los juegos suelen presentar situaciones que ayudan a despertar la creatividad y por la complejidad incentivan el uso de algoritmos complejos casi como jugando.

Este tutorial le ayudará a usted a implementar un juego de ajedrez, para ello heutilizado Microsoft Visual C++ 2005, sin embargo usted puede seguir los pasos con otras versiones de Visual C++ incluso otros entornos de programación.

Objetivo

El objetivo, obviamente, es implementar un juego de ajedrez escrito en Visual C++ con los siguientes requisitos:

Uso de la interfaz gráfica con manejo del Mouse.
Controlar y validar movidas de los jugadores.
Permitir dos jugadores.Detectar jaque, jaque mate, enroques, y otras movidas.

Así se verá el juego cuando se termine de codificar:


Imagen 1: Juego de Ajedrez en Visual C++ Terminado
Tareas por hacer:

Permitir enroque y peón al paso.
Detectar Jaque / Jaque Mate.
Visualizar las movidas realizadas según la notación oficial.
Permitir guardar/recuperar una partida.

Creación del proyecto

Para no alargar máseste asunto, lo primero que tenemos que hacer es crear el proyecto, el tipo de aplicación que necesitamos es “Documento único” conocido también como SDI (Simple Document Interface), asegurarse de que el check de la opción “Usar bibliotecas unicode” este deshabilitado por que no siempre están disponibles dichas bibliotecas en tiempo de ejecución (Ver Imagen 2).


Imagen 2: Elección del tipo deaplicación del proyecto.

En el siguiente paso del asistente podemos prescindir de algunas características que no utilizaremos en el proyecto, como: Controles ActiveX, Impresión y vista preliminar, Ayuda Contextual. Sólo consideraremos la opción “Manifiesto de controles comunes”, esta opción nos ayudará a sintonizar los controles comunes con el tema de windows actual, de tal forma que no se veanextraños.


Imagen 3: Elección de las características avanzadas del proyecto.

El resto de opciones no necesita mayor explicación, y al final encontrarán una ventana como de la imagen 4, en este punto deben asegurarse de tener a CView como clase base de la clase CAjedrezView; esto significa la clase donde dibujaremos y realizaremos todas las operaciones que tienen que ver con ajedrez estaránen la clase CAjedrezView.


Imagen 4: Vista final del asistente de creación de proyectos del Visual C++

Luego de hacer clic en finalizar se habrá creado un proyecto con las 4 clases que se muestran en la figura 4, podemos compilar y ejecutar el proyecto y obtendremos un programa como el que se muestra en la imagen 5.

Imagen 5: Programa inicial ejecutándose

Dibujar el tablero

Paradibujar el tablero de ajedrez dentro de la vista creada tenemos que tener en cuenta los parámetros siguientes:

1. Etiquetas de filas y columnas.
2. Margen entre el borde de la ventana y la cuadrícula del tablero.
3. Tamaño de la celda del tablero.


Imagen 6: Parámetros para dibujar el tablero de ajedrez

Para dibujar el tablero necesitaremos definir 3 valores fijos que no cambiarán y nosservirán para dibujar el tablero cada vez que lo necesitemos.

CODE: SELECCIONAR TODO
#define MARGEN 30
#define TAMCELDA 60
#define CELDAS  8

El siguiente paso es crear la función que dibujará el tablero, para ello debemos abrir la vista de clases, hacer clic derecho sobre la clase y elegir “Agregar->Función” luego aparecerá un dialogo como el de la imagen 7. No se deben olvidar de agregarun parámetro del tipo CDC* para que podamos dibujar los elementos.


Imagen 7: Agregar Función DibujarTablero

La función DibujarTablero

A continuación una descripción del algoritmo utilizado para dibujar el trablero de ajedréz.

Crea inicialmente los objetos necesarios para darle color al fondo y a las líneas del tablero de ajedrez (CPen, CBrush).Luego dibuja celda por celda (for...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • programacion C
  • Programacion c++
  • c# Programacion
  • Programacion En C#
  • Programacion en c
  • Programacion en c
  • Programacion en c++
  • Programacion c ++

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS