326  9.   SPMD  MPMD   ...

{

//...
int Tag = 2 ;

int WorldSize;

int TaskRank;

MPI_Status Status;

MPI_Init(&argc,&argv) ;

MPI_Comm_rank(MPI_COMM_WORLD,&TaskRank) ;

MPI_Coiroi_size(MPI_COMM_WORLD,&WorldSize) ;

//. . .
swi tch(TaskRank)
{

case 1:

{

//. ..
car * Car;

set<streets> SearchSpace
travel<streets>(Car, SearchSpace,Street) ;

//. . .
}
break ;

case 2:

{

//. . .
helicopter *BlueThunder;

set<air_space> NationalAirSpace;

travel<air_space>(BlueThunder,

NationalAirSpace,
AirSpace) ;

II...
}
//case n:

//. . .

}
)

 search_n_rescue    16 ,   
     ,     -
   .        
   ,      (  ,   
).       MPI-  
( ,  ,    ).    , 
  9.5 MPI-,   TaskRank = 1,    -
 Car  ,  streets-. MPI-,   TaskRank
= 2,     helicopter  ai^space-.  
   travel ().    travel ()
    vehicle,    -
        vehicle.  ,
,   MPI-       travel (), , -
  , .    ,   
travel ()   case  if,     
vehicle-,    .  vehicle- -
 ,    .  MPI-  