Cada proceso worker necesita encontrar las 5 palabras que más aparecen en un texto. Hasta ahora lo que podría hacer es:
Código
char palabrasQueMasAparecen[5][tamanioPalabra];
o bien:
Código
char *palabrasQueMasAparecen[5]; for(int palabra=0; palabra<5; palabra++) { }
El asunto es que necesito almacenar en una misma variable, las palabras que más aparecen de cada uno de los procesos. Entonces pensé en algo como:
Código
char palabrasQueMasAparecen[cantProcesos][5][tamanioPalabra];
o bien:
Código
char *palabrasQueMasAparecen[cantProcesos][5]; for(int proceso=0; proceso<5; proceso++) { for(int palabra=0; palabra<5; palabra++) { } }
El problema es que cada proceso tiene que enviar las 5 palabras que más usa al proceso maestro, a través de la función MPI_Send(), cuyo primer parámetro es la dirección de un buffer.
Como cada proceso debería enviar sus 5 palabras, yo pensé que cada uno debería enviar como primer parámetro de ésta función:
Código
&palabrasQueMasAparecen[idProceso];
pero el programa está crasheando cuando lo quiero correr, y estoy seguro de que estoy usando mal los tipos, y estoy enviando mal el primer parámetro a dicha función... Necesitaría que me den una idea de como usar los tipos correctamente para resolver éste problema.
Muchas gracias desde ya!