SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: pacorubio77 en Martes 19 de Febrero de 2008, 00:05

Título: Como Identificar Una Posicion Con Una Coordenada?
Publicado por: pacorubio77 en Martes 19 de Febrero de 2008, 00:05
Hola,no se como identificar la posicion de una matriz con una coordenada?,me explico:

Tengo la siguiente matriz de 3*3:

 3|_8|9_|2__|
 2|__|__|___|
 1|__|_3|___|
     a   b   c

Como asocio yo que el 8 está en la coordenada "a3",con la posicion[0][0]?,como asocio yo las coordenadas con la posición de matriz?


Un saludo,espero que me ayudeis...gracias
Título: Re: Como Identificar Una Posicion Con Una Coordenada?
Publicado por: fORU- en Martes 19 de Febrero de 2008, 02:21
Hola companero, para hacer lo que quiere solo tendria que hacer un simple printf cuando se encuentre el valor buscado en la matriz. si tiene dudas sobre mi mensaje favor hacermelo saber.

supongamos que ya tiene llena la matriz y es de 3x3 , y ahora queremos ver si el "valor" capturado se encuentra dentro de esta, se tendria que hacer algo parecido. (NOTA ESTA ES MI LOGICA SE PUEDE HACER DE DIFERENTES FORMAS).

for(i=0;i<3;i++)
for(j=0;j<3;j++)
{if([valor]==[ matriz[j] ] )
   {   printf("el valor %d se encuentra en la posicion %d %d",[valor],i,j);
        bandera++;
   }
  if(i==2&&j==2&&bandera==0)
        printf("el valor %d no se encuentra dentro de la matriz",[valor]);

}
Título: Re: Como Identificar Una Posicion Con Una Coordenada?
Publicado por: pacorubio77 en Martes 19 de Febrero de 2008, 19:01
Gracias por la contestacion,pero es que esa que me pones no es la funcion de lo que yo consultaba,yo quiero asignar a la posicion de mi matriz una coordenada,porque yo quiero mover dentro de mi matriz, es decir si yo tengo el 3 en la c1,lo quiero mover a la c2,para eso lo quiero.me entiendes?

De todas formas.muchas gracias.Sigo esperando ideas.Gracias
Título: Re: Como Identificar Una Posicion Con Una Coordenada?
Publicado por: fORU- en Martes 19 de Febrero de 2008, 21:02
ahi le va un peque;o ejemplo companero:

Código: Text
  1.  
  2. #include &#60;conio.h&#62;
  3. #include &#60;stdio.h&#62;
  4.  
  5. void main(void)
  6. {  int i,j,a,b,Temp,x,y,v[3][3]={{1,2,3},{4,5,6},{7,8,9}};
  7.   clrscr();
  8.   for(i=0;i&#60;3;i++)
  9.     for(j=0;j&#60;3;j++)
  10.     {  gotoxy(j+1*2,i+2);
  11.       printf(&#34;%d&#34;,v[i][j]);
  12.     }
  13.   [b]printf(&#34;&#092;nposicion inicial fila: &#34;);
  14.   scanf(&#34;%d&#34;,&a);
  15.   printf(&#34;&#092;nposicion inicial columna: &#34;);
  16.   scanf(&#34;%d&#34;,&b);
  17.   printf(&#34;&#092;nposicion final fila: &#34;);
  18.   scanf(&#34;%d&#34;,&x);
  19.   printf(&#34;&#092;nposicion final columna: &#34;);
  20.   scanf(&#34;%d&#34;,&y);
  21.   Temp=v[a][b];
  22.   v[a][b]=v[x][y];
  23.   v[x][y]=Temp;[/b]
  24.   for(i=0;i&#60;3;i++)
  25.     for(j=0;j&#60;3;j++)
  26.     {  gotoxy(j+1*2,i+15);
  27.       printf(&#34;%d&#34;,v[i][j]);
  28.     }
  29.   getch();
  30. }
  31.  
  32. fila:  
  33. 0
  34. 1
  35. 2
  36. columna: 0 1 2
  37. claro este peque;o codigo que hize solo es para una sola ocasion y no tiene validado si  se  llega a caputar mal alguna coordenada asi que eso ya se lo dejo a usted compaero  :P
  38.  
  39.  
Título: Re: Como Identificar Una Posicion Con Una Coordenada?
Publicado por: Eternal Idol en Martes 19 de Febrero de 2008, 21:35
fORU- usa la etiqueta CODE entre corchetes ([]) como hice en tu ultimo mensaje y en lo posible no hagas apologia de funciones no standard de Borland por favor.