Die Entfernungsmatrix ist symmetrisch. Also kannst du eine Hälfte entlang der Hauptdiagonalen ignorieren.
Die x- und die y-Koordinaten der Städte, meinetwegen auch die Namen
speicherst du in einem Array oder sonst einer geeigneten Struktur.
Delphi-Quellcode:
for i := 1
to n
do begin
for j := i
to n
do begin
// hier mit x[i],y[i],x[j],y[j] den Satz des Pythagoras anwenden.
// In der math-unit gibt's die function hypot() dafür, glaub' ich
end;
end;
Viel Spass damit ...