" ." (punto) si no hay cosas
"*" (arterisco) que corresponde a una rueda
"I" (i mayuscula) que corresponde a un motor que gira en sentido horario. Ojo si al lado de la I encuentra un * ese arterisco gira en sentido contrario ya que lo hace girar la I
mi codigo es el siguiente hasta ahora puedo leer la matriz sin problemas hasta encontrar que el usuario ingrese 0 0 y termine.
Código C++:
Ver original
#include <iostream> using namespace std; void llenar(char **s,int posx, int posy) { //aqui defino posiciones q revisar la de iz de I, la de derecha, arriba,abajo, (arriba der y abajo iz). para aplicar backtraking s[0][0] = posx ; s[0][1] = posy -1; s[1][0] = posx ; s[1][1] = posy +1; s[2][0] = posx +1; s[2][1] = posy -1; s[3][0] = posx -1; s[3][1] = posy +1; s[4][0] = posx -1; s[4][1] = posy ; s[5][0] = posx +1; s[5][1] = posy ; } void mostrar(char **t, int n, int m) { for(int i=0 ; i< n; i++) { for(int j=0; j < m ; j++) { cout<<""<<t[i][j]; } cout<<endl; } } int main (int argc, char** argv) { int R,C; char **arr; cin >>R; cin >>C; while( R != 0 && C != 0 ) { arr = new char*[R]; for(int i= 0; i <R ; i++) { arr[i] = new char[C]; for(int j = 0; j < C ; j++) { cin>>arr[i][j]; } } cout<<endl; // backtraking(arr,R,C,i,j); mostrar(arr,R,C); cin >>R; cin >>C; } return 0; }
En estos momentos necesito recorrer nuevamente la matriz guardada hasta encontrar una I y colocarle un "(" parentesis y la rueda que hace girar la I colocarle un ")" de esta forma.
Ejemplo visual
---------------------
para in
-----------
3 3
...
.I*
...
-----------
para out para in
______
...
.()
...