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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Matriz , bucle a medias (buscaminas)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Matriz , bucle a medias (buscaminas)  (Leído 2,380 veces)
Neibar

Desconectado Desconectado

Mensajes: 47


Ver Perfil
Matriz , bucle a medias (buscaminas)
« en: 12 Junio 2012, 11:17 am »

Supongamos que tenemos una matriz de 10x10 , y aleatoriamente hay 0 o -1.

entonces, lo que quiero hacer es alrededor del -1 , aparezcan "numeros 1".

y lo verifico de la siguiente manera, alguien puede encontrar si hay algun error? Porqué
no me llega a hacer el cuadrado entero, sino que me hace la esquina superior izquierda solamente. Tal vez mi planteamiento es erróneo... :S

Código
  1. for(int i=0; i<10; i++){
  2. for(int y=0; y<10; y++){
  3. if(minas[i][y]==-1){
  4.  
  5. for(int z=(i-1);z<(i+1);z++){
  6. for(int x=(y-1);x<(y+1);x++){
  7. if(minas[i][y] == 1){
  8. minas[i][y]++;
  9. }else{
  10. if(minas[z][x] != -1){
  11. minas[z][x]= 1;
  12. }
  13. }
  14. }
  15. }
  16.  
  17.  
  18. }
  19. }
  20. }


En línea

Neibar

Desconectado Desconectado

Mensajes: 47


Ver Perfil
Re: Matriz , bucle a medias (buscaminas)
« Respuesta #1 en: 12 Junio 2012, 11:19 am »

vale ya encontré el error ,,

Código
  1. for(int z=(i-1);z<(i+1);z++){
  2. for(int x=(y-1);x<(y+1);x++){
  3. if(minas[i][y] == 1){
  4. minas[i][y]++;
  5. }else{
  6. if(minas[z][x] != -1){
  7. minas[z][x]= 1;
  8. }
  9. }
  10. }
  11. }
  12.  

tenia que poner "<="

Código
  1. for(int z=(i-1);z<=(i+1);z++){
  2. for(int x=(y-1);x<=(y+1);x++){


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines