Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratorio N 10,11 y 12
Libreras, Clases y objetos, mtodos
INFORME
Integrantes:
2014-II
Introduccin
Mediante este informe se mostrar paso a paso el desarrollo de una aplicacin del
famoso juego Snake donde se puso en prctica los temas relacionados: a las clases, a
los mtodos y a los objetos desarrollados de un modo conceptual y bsico por nuestro
profesor de programacin de manera entendible y adems se vern algunos comandos el
cual se tuvo que investigar qu funcin cumplan en el programa.
Antes que nada, necesitamos saber C Bsico. Tener creatividad, imaginacin y sobre
todo tener mucha paciencia.
class CRender {
public:
char buffer[256]; // atributo
void m_Renderizar(const char *cadena); // mtodo
};
en
la
Finalmente que para usar la librera, tienes que poner #include <conio2.h>, esto es vital,
caso contrario no funcionar.
Figura 1
2. Creacin de la clase gusano
Como se observa en la figura 2, se empieza a crear una clase el cual se va a
llamar gusano, donde tendr atributos privados y uno de ellos es un arreglo,
luego en public: se declaran las variables pblicas y los prototipos de los
mtodos de la clase, donde dichas variables pblicas pueden ser utilizadas por
cualquiera de los mtodos. Tambin se observa el prototipo del contructor el cual
va a indicar cmo va a a iniciar la aplicacin.
Figura 2
Figura 3
4.1.
Mtodo generarmarco ()
Figura 4
4.2.
Mtodo guardar_posicion ()
Figura 5
4.3.
Mtodo borrar_cuerpo ()
Figura 6
4.4.
Mtodo cuerpo_gus ()
Luego de que ya se haya definido cmo va a ser el tamao del gusano con
respecto a n, se empieza a imprimir el gusano con el smbolo *, donde para
esto se declar una variable de tipo entero i que con una sentencia for iba a
recorrer de espacio por espacio desde la posicin 1 del largo del cuerpo
hasta que sea menor a tamanio, donde para esto dentro del for se us el
comando gotoxy para fijar la ubicacin de la cabeza del gusano
incrementndose hasta la cola, pintndola con asterisco *.
Figura 7
4.5.
Mtodo teclear ()
En este mtodo se empieza a definir con una condicin que contiene kbhit() el
cual va a servir para revisar si una tecla est disponible, donde dentro de ella
la tecla pulsada va a ser recogida por el comando getch() y no va a cambiar
hasta que pulsemos otra tecla.
Luego dentro de la sentencia switch se empiezan a definir lo que se ejecuta
dentro de los casos que son arriba, abajo, derecha e izquierda y fueron
definidos al empezar este cdigo con su respectivo nmero (en cdigo ASCII).
Dichos casos estn regidos por la variable de tipo char tecla, donde dentro de
dichos casos se empiezan a poner condiciones para que el gusano cuando
est en un sentido no se vaya por el sentido opuesto.
Figura 8
4.6.
Mtodo direccion ()
Figura 9
4.7.
Mtodo come_crece ()
Figura 10
4.8.
Mtodo game_over ()
En este mtodo se empiezan a definir las condiciones del juego para perder,
si la posicin del gusano llega a coincidir con el marco entonces se limpia la
pantalla (clrscr()) y con el comando gotoxy se define una posicin (35,13)
para que en esa posicin se imprima GAME OVER y finalmente se coloca
getch() para que al pulsar una tecla se ejecute return 0, como retorna nulo
entonces se cierra la consola (juego).
Para la segunda condicin se declara una variable j que recorra todo el
tamao del gusano desde la cabeza hasta la cola y de ah se dice que si una
de las posiciones recorridas por j es igual a la posicin x, por otro lado igual a
y (x,y son las coordenadas del cuerpo) entonces sucede lo mismo que en la
primera parte se limpia la pantalla y se imprime en una posicin GAME
OVER, donde se tiene que pulsar una tecla para salir de la consola (juego).
Figura 11
5. Funcin global main()
Figura 12
B. Consola:
Figura 13
OBSERVACIONES
Se observa que al poner dos ves en el main() el mtodo teclear del objeto A
(A.teclear()) al cambiar de direccin al gusano con las flechas del teclado se
disminua un retardo que haba.
El comando khbit() que est en la figura 8, sirvi para que con un solo toque de la
tecla, por ejemplo arriba el gusano se valla en esa direccin sin necesidad de
quedarnos pulsando la tecla, ya que dicha tecla se guarda despus en un getch().
En este caso se defini un constructor, para poder colocar ah los valores iniciales de
las variables el cual describen al gusano y en el main() se coloca su posicin de
inicio y se define un objeto A el cual va a tener todos sus mtodos.
No se us using namespace std, ya que no estaban los comandos cin.get() ni
tampoco cout que son propios de la librera <iostream> del c++.
CONCLUSIONES
Gracias a los conocimientos adquiridos de los laboratorios 10,11 y 12, pero sobre
todo del laboratorio 11 y 12 que habla sobre la programacin orientado a objetos
(lenguaje c++) se pudo realizar esta aplicacin del snake.
Se concluye que el uso de clases y objetos es muy importante, ya que los mtodos
que estn en una clase, no solo se puede aplicar para un objeto sino para varios.
Se concluye que gracias al cdigo ASCII, conociendo el significado de los nmeros,
se puede realizar como por ejemplo en este caso generar el marco, luego para el
movimiento del gusano y adems para la forma de la comida que es de un rombo
pequeo.
El uso del comando gotoxy de la librera <conio2.h> fue primordial para esta
aplicacin, ya que sirvi para dar las posiciones (coordenadas) al gusano, comida,
para el mensaje del GAME OVER y adems para generar el marco.
BIBLIOGRAFA
Cherre A, Rafael (2002) Lenguaje de Programacin C++.Net. Lima: s.n.
(005.13/CH54).
Cherre A, Rafael
(005.13/CH54).
(2002)
Lenguaje
de
Programacin
C++.Net.
Lima:
s.n.