elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Juego: Luces Fuera en c++ en: 23 Enero 2015, 13:38 pm
Hola buenas, soy nuevo por aqui, he leido que aqui no pides aqui un codigo y te lo dan por flojera y tal pero si te pueden ayudar si tienes el codigo medio hecho que es mi caso. El juego que estoy realizando es el de Luces Fuera en el formato c++. El problema que tengo es cuando abandonas el juego y la maquina tiene que hacer la solucion paso a paso, que no tengo manera de hacerlo... lo demás el movimiento del jugador y tal, esta casi listo. Les paso el codigo si lo necesitan para saber como lo hago: (el una matriz de 5x5).

Código
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cstdlib>
  4. #include <ctime>
  5.  
  6. using namespace std;
  7.  
  8. void tablero(char c[5][5]);
  9. void intro_primera(char c[5][5]);
  10. void Jugador(char c[5][5]);
  11. void cambiarc(char c[5][5],int i,int j);
  12. void cambiarc2(char c[5][5],int i,int j);
  13. void solucion(char c[5][5],int i,int j,int k);
  14.  
  15. int main(){
  16.  
  17. int i,j,ganador,k;
  18. char c[5][5];;
  19. intro_primera(c);
  20.  
  21. cout << "BIENVENIDOS AL JUEGO DE LAS LUCES" << endl;
  22. cout << endl;
  23. cout << "Las vacias son las luces apagadas y las O son las luces encendidas" << endl;
  24. cout << endl;
  25.  
  26. do{
  27.  
  28. cout << "Va a continuar? De ser asi pulse 1, sino pulse 0" << endl;
  29. cin >> ganador;
  30.  
  31. if(ganador==0){
  32. cout << "La solucion es..." << endl;
  33. cout << endl;
  34. solucion(c,i,j,k);
  35. }else{
  36. system("cls");
  37. tablero(c);
  38. Jugador(c);
  39. ganador==1;
  40. }
  41. tablero(c);
  42. }while(ganador=!0);
  43.  
  44. return 0;
  45.  
  46. }
  47.  
  48. void tablero(char c[5][5]){
  49. int i,j;
  50. for(i=0; i<5; i++){
  51. for(j=0; j<5; j++){
  52. if(j<4){
  53. cout << " " << c[i][j] << " | ";
  54. }else{
  55. cout << " " << c[i][j] << " | ";
  56. }
  57. }
  58. if(i<5){
  59. cout << "\n------------------------\n";
  60. }
  61. }
  62. cout << endl;
  63. cout << endl;
  64. }
  65.  
  66. void intro_primera(char c[5][5]){
  67. int i,j,k,a;
  68. srand(time(NULL));
  69. for(i=0;i<5;i++){
  70. for(j=0;j<5;j++){
  71. a=rand()%101;
  72. if(a%2==0){
  73. c[i][j]=' ';
  74. }else{
  75. c[i][j]='O';
  76. }
  77. }
  78. }
  79. }
  80.  
  81. void Jugador(char c[5][5]){
  82. int i,j,k;
  83. int aux;
  84. k=0;
  85.  
  86. cout << "Dime los numeros del 0 al 4 en ambos casos" << endl;
  87. cout << endl;
  88. cout << "Dime el primero" << endl;
  89. cin >> i;
  90. cout << endl;
  91. cout << "Dime el segundo" << endl;
  92. cin >> j;
  93. cout << endl;
  94.  
  95. cambiarc(c,i,j);
  96. cambiarc2(c,i,j);
  97.  
  98.  
  99. }
  100.  
  101.  
  102. void cambiarc(char c[5][5],int i,int j){
  103.  
  104. if (c[i][j]=='O'){
  105. c[i][j]=' ';
  106. }else if (c[i][j]==' '){
  107. c[i][j]='O';
  108. }
  109.  
  110. }
  111.  
  112. void cambiarc2(char c[5][5],int i,int j){
  113.  
  114. if(i==0 && j==0){
  115. if(c[i+1][j]=='O'){
  116. c[i+1][j]=' ';
  117. }else if(c[i+1][j]==' '){
  118. c[i+1][j]='O';
  119. }
  120. if(c[i][j+1]=='O'){
  121. c[i][j+1]=' ';
  122. }else if(c[i][j+1]==' '){
  123. c[i][j+1]='O';
  124. }
  125. }
  126.  
  127. if((i==0 && (j>0 && j<4))){
  128. if(c[i][j-1]=='O'){
  129. c[i][j-1]=' ';
  130. }else if(c[i][j-1]==' '){
  131. c[i][j-1]='O';
  132. }
  133. if(c[i][j+1]=='O'){
  134. c[i][j+1]=' ';
  135. }else if(c[i][j+1]==' '){
  136. c[i][j+1]='O';
  137. }
  138. if(c[i+1][j]=='O'){
  139. c[i+1][j]=' ';
  140. }else if(c[i+1][j]==' '){
  141. c[i+1][j]='O';
  142. }
  143. }
  144.  
  145. if(i==0 && j==4){
  146. if(c[i+1][j]=='O'){
  147. c[i+1][j]=' ';
  148. }else if(c[i+1][j]==' '){
  149. c[i+1][j]='O';
  150. }
  151. if(c[i][j-1]=='O'){
  152. c[i][j-1]=' ';
  153. }else if(c[i][j-1]==' '){
  154. c[i][j-1]='O';
  155. }
  156. }
  157.  
  158. if(i==4 && j==0){
  159. if(c[i-1][j]=='O'){
  160. c[i-1][j]=' ';
  161. }else if(c[i-1][j]==' '){
  162. c[i-1][j]='O';
  163. }
  164. if(c[i][j+1]=='O'){
  165. c[i][j+1]=' ';
  166. }else if(c[i][j+1]==' '){
  167. c[i][j+1]='O';
  168. }
  169. }
  170.  
  171. if(i==4 && j==4){
  172. if(c[i-1][j]=='O'){
  173. c[i-1][j]=' ';
  174. }else if(c[i-1][j]==' '){
  175. c[i-1][j]='O';
  176. }
  177. if(c[i][j-1]=='O'){
  178. c[i][j-1]=' ';
  179. }else if(c[i][j-1]==' '){
  180. c[i][j-1]='O';
  181. }
  182. }
  183.  
  184. if((i==4 && (j>0 && j<4))){
  185. if(c[i][j-1]=='O'){
  186. c[i][j-1]=' ';
  187. }else if(c[i][j-1]==' '){
  188. c[i][j-1]='O';
  189. }
  190. if(c[i][j+1]=='O'){
  191. c[i][j+1]=' ';
  192. }else if(c[i][j+1]==' '){
  193. c[i][j+1]='O';
  194. }
  195. if(c[i-1][j]=='O'){
  196. c[i-1][j]=' ';
  197. }else if(c[i-1][j]==' '){
  198. c[i-1][j]='O';
  199. }
  200. }
  201.  
  202. if((i>0 && i<4) && j==0){
  203. if(c[i-1][j]=='O'){
  204. c[i-1][j]=' ';
  205. }else if(c[i-1][j]==' '){
  206. c[i-1][j]='O';
  207. }
  208. if(c[i][j+1]=='O'){
  209. c[i][j+1]=' ';
  210. }else if(c[i][j+1]==' '){
  211. c[i][j+1]='O';
  212. }
  213. if(c[i+1][j]=='O'){
  214. c[i+1][j]=' ';
  215. }else if(c[i+1][j]==' '){
  216. c[i+1][j]='O';
  217. }
  218. }
  219.  
  220. if((i>0 && i<4) && j==4){
  221. if(c[i-1][j]=='O'){
  222. c[i-1][j]=' ';
  223. }else if(c[i-1][j]==' '){
  224. c[i-1][j]='O';
  225. }
  226. if(c[i][j-1]=='O'){
  227. c[i][j-1]=' ';
  228. }else if(c[i][j-1]==' '){
  229. c[i][j-1]='O';
  230. }
  231. if(c[i+1][j]=='O'){
  232. c[i+1][j]=' ';
  233. }else if(c[i+1][j]==' '){
  234. c[i+1][j]='O';
  235. }
  236. }
  237.  
  238. if((i>0 && i<4) && (j>0 && j<4)){
  239. if(c[i-1][j]=='O'){
  240. c[i-1][j]=' ';
  241. }else if(c[i-1][j]==' '){
  242. c[i-1][j]='O';
  243. }
  244. if(c[i][j-1]=='O'){
  245. c[i][j-1]=' ';
  246. }else if(c[i][j-1]==' '){
  247. c[i][j-1]='O';
  248. }
  249. if(c[i+1][j]=='O'){
  250. c[i+1][j]=' ';
  251. }else if(c[i+1][j]==' '){
  252. c[i+1][j]='O';
  253. }
  254. if(c[i][j+1]=='O'){
  255. c[i][j+1]=' ';
  256. }else if(c[i][j+1]==' '){
  257. c[i][j+1]='O';
  258. }
  259. }
  260. }
  261.  
  262. void solucion(char c[5][5],int i,int j,int k){
  263.  
  264. }

Muchas gracias a los que me ayuden si puede ser...

Mod: tema modificado, para publicar código usa etiquetas GeSHi
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines