Существует несколько способов определения расстояния по широте / длине . Я не думаю, что вам понадобится большой опыт программирования для его реализации.
EDIT
Если число городов статично и равно 80, и вы знаете, как рассчитать расстояние между городами, тогда простой способ - сохранить эту информацию в базе данных; со структурой типа:
--City
CityId
CityName
Latitude
Longitude
--CityCityDistance
StartCityId
FinishCityId
RouteDistance
Ваша таблица CityCityDistance будет иметь только несколько тысяч строк (если я помню, как работает математика), а затем, если вам когда-нибудь понадобится узнать город, ближайший к другому городу, sql будет выглядеть примерно так (в t-sql):
select top 1 ccd.FinishCityId, c.CityName
from CityCityDistance ccd
join City c on ccd.StartCityId = c.CityId
where ccd.RouteDistance = (select min(RouteDistance) from CityCityDistance where StartCityId = <chosen city id> )