int n, j, i, i2, i3, rank, size, rowChunk, **cells, **cellChunk;
MPI_Status status;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);
if(!rank){
printf("\nEnter board size:\n");
fflush(stdout);
scanf("%d", &n);
printf("\nEnter the total iterations to play:\n");
fflush(stdout);
scanf("%d", &j);
srand(3);
rowChunk = n/size; //how many rows each process will get
for(i=1; i<size; i++){
MPI_Send(&n,1, MPI_INT, i, 0, MPI_COMM_WORLD);
MPI_Send(&j,1, MPI_INT, i, 7, MPI_COMM_WORLD);
}
cells = (int**) malloc(n*sizeof(int*)); //create main 2D array
for(i=0; i<n; i++){
cells[i] = (int*) malloc(n*sizeof(int));
}
for(i=0; i<n; i++){
for(i2=0; …
Run Code Online (Sandbox Code Playgroud)