Dev - C++ - Juego Pong: Error al Ejecutar

   
Vista:

Juego Pong: Error al Ejecutar

Publicado por jasantonio (11 intervenciones) el 19/04/2016 17:08:42
Hola, estoy escribiendo código para el Juego del Pong...he escrito el código para mostrar en pantalla el campo de juego, las dos raquetas y la pelota. En principio el programa compila bien, pero al ejecutar dice que el archivo.exe debe cerrarse....Tal y como está escrito el código, todavía no se puede jugar al juego, pero sí debería mostrarse en la consola una única pantalla con el campo de juego, las dos raquetas y la pelota....Por favor, espero que me podais ayudar, llevo dos días con el error y no veo solución....El código es éste:...Gracias, un saludo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# include <stdio.h>
# define V 21 
# define H 75
 
void inicio (char campo[V][H] , int pelX, int pelY, int inijug, int finjug, int iniia, int finia) ;
void borde (char campo [V][H]);
void raqjug (char campo [V][H], int inijug, int finjug);
void raqia (char campo [V][H], int iniia, int finia);
void pel (char campo [V][H] , int pelX, int pelY);
void leercamp (char campo [V][H]);
 
 
int main(){
 
	int pelX, pelY;
	int inijug, finjug;
	int iniia, finia;
 
	char campo [V][H];
 
	pelX = 37;
 	pelY = 10;
 
 	inijug = 8;
 	finjug = 12;
 
 	iniia = 8;
 	finia = 12;
 
 	inicio (campo,pelX, pelY, inijug, finjug, iniia, finia);
 
 
 	leercamp (campo);
 
 
 	system ("pause");
	return 0;
}
 
 
void inicio (char campo[V][H] , int pelX, int pelY, int inijug, int finjug, int iniia, int finia) {
 
	borde (campo);
	raqjug (campo, inijug, finjug);
	raqia (campo, iniia, finia);
	pel (campo, pelX, pelY);
 
}
 
 
void borde (char campo [V][H]){
 
	int i, j;
 
	for (i = 0; i < V; i++) {
 
		for (j = 0; j < H; j++){
			if (i == 0 || i == V-1){
				campo [i] [j] = '-';
			}
			else if (j == 0 || j == H-1) {
				campo [i] [j] = '|';
		}
			else {
				campo [i] [j] = ' ' ;
			}
	}
 
	}
}
 
void raqjug (char campo [V][H], int inijug, int finjug) {
 
	int i, j;
 
	for (i = inijug; i < finjug; i++ ) {
 		for (j = 2; j<=3; j++) {
			campo [i] [j] = 'X';
 
}
}
}
 
 
void raqia (char campo [V][H], int iniia, int finia) {
 
	int i, j;
 
	for (i = iniia; i < finia; i++ ) {
 		for (j = H-4; j<= H-3; j++) {
			campo [i] [j] = 'X' ;
 
}
}
}
 
void pel (char campo [V][H] , int pelX, int pelY) {
	campo [pelX][pelY] = 'O';
}
 
void leercamp (char campo [V][H]) {
	int i,j;
 
	for (i = 0; i < V; i++){
		for (j = 0; j < H; j++){
			printf ("%c", campo [i][j]);
		}
		printf( "\n");
	}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Juego Pong: Error al Ejecutar

Publicado por Thanatos (73 intervenciones) el 19/04/2016 19:59:33
Los nombres de las variables que utilizaste dentro de la función main, para las coordenadas iniciales de la pelota, dan la impresión de que todo está correcto; pero la función que las utiliza lo hace al revés. Si intercambias los valores, podrás ver el campo de juego con la pelota en el centro.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego Pong: Error al Ejecutar

Publicado por jasantonio (11 intervenciones) el 20/04/2016 08:05:32
Hola Thanatos....Pues sí..!!...era eso...!!!....ufff....ya me gustaría a mi tener ese poderío de resolver así de rápido y bien...En fin....que muchas gracias, la verdad es que en este foro hay personas increibles que además de saber mucho están dispuestas a ayudar, y además rápido y bien...Gracias otra vez...!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar