Arrays paralelos en Pascal

Dos o más arrays que utilizan el mismo subíndice para referirse a términos homólogos se llaman arrays paralelos.

Basados en el programa anterior se tienen las edades de ‘x’ personas, para saber a que persona se refiere dicha edad se puede usar otro arreglo en forma paralela y asociarle los nombres de manera simultánea con las edades.

Ejemplo:

ProgramParalelo_edades;
 {El siguiente programa captura 10 edades
  y nombres por medio de arrays paralelos y  los muestra ordenados en forma ascendente}UsesCrt;
ConstMaxPersonas = 10;
Varedades      :array [1..MaxPersonas] ofbyte;
  nombres      :array [1..MaxPersonas] ofstring [10];
  aux_nom      :string[10];
  i,j,aux_edad :byte;
beginClrScr;
  {lectura de arrays paralelos de manera simultánea}fori:=1toMaxPersonas dobegingotoxy(10,5);
      ClrEol;
      Write(i,'.- Nombre : ','Edad : ');
      gotoxy(23,5);ReadLn(nombres[i]) ;
      gotoxy(48,5);ReadLn(edades[i])
    end;
  {ordenación}fori:=1toMaxPersonas-1dobeginforj:=i+1to MaxPersonas do beginif edades[i]>edades[j] thenbeginaux_edad  :=edades[i];
              edades[i] :=edades[j];
              edades[j] :=aux_edad;
              aux_nom   :=nombres[i];
              nombres[i]:=nombres[j];
              nombres[j]:=aux_nomendend;
      WriteLn(nombres[i]:10,' ',edades[i]:3)
      {escritura de los arrays paralelos}
    end;
  Readkeyend.