ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ
          
        
        
          
            99
          
        
        
          const int max_Acols = 110;
        
        
          const int max_Bcols = 110;
        
        
          int A[max_Arows][max_Acols], B[max_Acols][max_Bcols],
        
        
          C[max_Arows][max_Bcols];
        
        
          int buffer[max_Acols], ans[max_Acols];
        
        
          int myid, master, numprocs, numsent;
        
        
          double starttime, stoptime;
        
        
          MPI_Request req;
        
        
          int Bsend[10000];
        
        
          int Asend[10000];
        
        
          MPI_Status status;
        
        
          int i,j,numsend,sender,anstype,row,arows,
        
        
          acols,brows,bcols,crows,ccols;
        
        
          MPI_Init(&argc, &argv);
        
        
          MPI_Comm_rank(MPI_COMM_WORLD, &myid);
        
        
          MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
        
        
          // количество строк и столбцов матрицы A
        
        
          arows = 100;
        
        
          acols = 100;
        
        
          // количество строк и столбцов матрицы В
        
        
          brows = 100;
        
        
          bcols = 100;
        
        
          // количество строк и столбцов матрицы С
        
        
          crows = arows;
        
        
          ccols = bcols;
        
        
          master = 0;
        
        
          // код главного процесса
        
        
          if (myid == 0) {
        
        
          printf("\nnumber of processes must be <= dimention+1 and
        
        
          >1\n");
        
        
          // инициализация А и B
        
        
          // инициализация А и B
        
        
          FILE* stream;
        
        
          char* fileA = "inputA1.txt";
        
        
          char* fileB = "inputB1.txt";
        
        
          char* fileC = "outputC1.txt";
        
        
          char mode_r = 'r';
        
        
          char mode_w = 'w';
        
        
          stream = fopen(fileA, &mode_r);
        
        
          fscanf(stream, "%i",&arows);
        
        
          fscanf(stream, "%i",&acols);
        
        
          for(i=0;i<arows;i++)
        
        
          {
        
        
          for(j=0;j<acols;j++)
        
        
          {
        
        
          fscanf(stream, "%i", &(A[i][j]));
        
        
          }
        
        
          }