Reimprimir Matriz bidimensional modificada Hola buenas, lo que pasa es que tengo esta tarea final, y me dan una matriz bidimensional con letras, me asignan las siguientes palabras
Palabras: RATONES, PILON, HILAR, ZAPATO, ANCIANO, TUERCA, CAMPO
Las cuales estan dentro de la matriz lo que yo debo hacer es encontrarlas y cambiarlas a minusculas ya tengo la idea planteada, en el codigo que tengo empece como si no se supiera en que direccion estaba la primer palabra para que buscara y fuera descartando(creo que borrare eso, ustedes que dicen?) pero ya luego hice que se buscara en la direccion que yo ya sé, se encuentran las palabras. (esta opcion es mejor no? me deja mas corto el programa)
Lo que pasa es que ya no se como mandar a reimprimir la matriz ya cambiada, ya tengo en el caso de que se cruzen que se considere que si ya estan en minus que se deje como esta. Por favor espero me ayuden y me iluminen con su sabiduria
Código:
#include <iostream>
#include<stdio.h>
#include<stdlib.h>
char matriz[9][10];
int main()
{
char letra[12];
int k,R;
char matriz[9][10]=
{
{'E','R','U','Q','R','I','M','M','Z','T'},
{'O','A','E','Q','I','T','Z','T','Q','M'},
{'P','T','U','E','R','C','A','Q','O','L'},
{'Q','O','M','V','V','O','P','M','A','C'},
{'O','N','A','I','C','N','A','M','G','E'},
{'M','E','Y','B','O','T','T','Q','I','N'},
{'N','S','Q','L','R','E','O','M','D','T'},
{'E','H','I','L','A','R','J','J','N','O'},
{'O','P','O','C','L','M','U','M','I','C'}
};
for(int i=0; i<9; i++)//imprime matriz sopa de letras
{
for(int j=0; j<10; j++)
{
printf(" %c\t", matriz[i][j]);
printf("\n");
}
}
for(int p=0; p<9; p++)
{
for(int q=0; q<10; q++)
{
if(matriz[p][q]='R')
{
if (q<4)// buscar hacia la derecha
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R+1]='A' && letra[R+2]='T' && letra[R+3]='O' && letra[R+4]='N' && letra[R+5]='E' && letra[R+6]='S')
{
for(int k=R; k<R+7; k++)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
else
if(p<3 && q<4)//esquina inferior derecha
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R+11]='A' && letra[R+22]='T' && letra[R+33]='O' && letra[R+44]='N' && letra[R+55]='E' && letra[R+66]='S')
{
for(int k=R; k<R+77; k=k+11)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
else
if(p<3)//hacia abajo
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R+10]='A' && letra[R+20]='T' || letra[R+20]='t' && letra[R+30]='O' && letra[R+40]='N' || letra[R+40)='n' && letra[R+50]='E' && letra[R+60]='S')
{
for(int k=R; k<R+70; k=k+10)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
else
if(p<3 && q>5)//hacia esquina inferior izquierda
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R+9]='A' && letra[R+18]='T' && letra[R+27]='O' && letra[R+36]='N' && letra[R+45]='E' && letra[R+54]='S')
{
for(int k=R; k<R+63; k=k+9)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
else
if(q>5)//hacia izquierda
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R-1]='A' && letra[R-2]='T' && letra[R-3]='O' && letra[R-4]='N' && letra[R-5]='E' && letra[R-6]='S')
{
for(int k=R; k<R-7; k--)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
else//hacia esquina superior izquierda
if(p>5 && q>5)
{
letra[p*10+q]=matriz[p][q];
letra[R]=letra[p*10+q];
if(letra[R-11]='A' && letra[R-22]='T' && letra[R-33]='O' && letra[R-44]='N' && letra[R-55]='E' && letra[R-66]='S')
{
for(int k=R; k<R-77; k=k-11)
{
if(letra[k]>=65 && letra[k]<=90)
letra[k]=letra[k]+32;
else letra[k]=letra[k];
}
}
}
}
}
}
for(int t=0; t<9; t++)
{
for(int u=0; u<10; u++)
{
if(matriz[t][u]='P')
{
if(t>3 && u<6)// hacia esquina superior derecha
{
letra[t*10+u]=matriz[t][u];
letra[P]=letra[t*10+u];
if(letra[P-9]='I' || letra[P-9]='i' && letra[P-18]='L' && letra[P-27]='O' && letra[P-36]='N' || letra[P-36]='n')
{
for(int m=P; m<P-45; m=m-9)
{
if(letra[m]>=65 && letra[m]<=90)
letra[m]=letra[m]+32;
else letra[m]=letra[m];
}
}
}
else
if (u<6)// buscar hacia la derecha
{
letra[t*10+u]=matriz[t][u];
letra[P]=letra[t*10+u];
if(letra[P+1]='I' && letra[P+2]='L' && letra[P+3]='O' && letra[P+4]='N')
{
lespego la continuacion del codigo |