156
Сценарий
координаты точек:
<х1> <у1>
<х4> <у4>
максимальный маршрут:
<ml> <m2> <m3> <m4>
длина = <mх>
минимальный маршрут:
<n1> <n2> <n3> <n4>
длина = <mn>
Простейший способ решения этой задачи заключается в организации перебора всех замкнутых
маршрутов, проходящих через заданные точки и выбора среди минимального и максимального по
длине маршрутов.
Программа
Алгоритм
мин. и макс. маршруты
алг «мин. и макс. маршруты»
cls
нач
n = 4
п = 4
dim x(n),y(n),r(n,n)
dim x(n),y(n),r(n,n)
? «координаты точек»
вывод («координаты точек»)
gosub vvdan 'ввод данных
ввод-координат-точек
restore mrshrt 'маршруты
загрузка-маршрутов
? «маршруты:»
вывод («маршруты:»)
mr = 1*2*3
mr =1*2*3
mx = 0
тх = 0
for l = 1 to mr
от l = 1 до mr
read k1, k2, k3, k4
ввод k1, k2, k3, k4
dl = r(kl,k2) + r(k2,k3)
dl = r(kl,k2) + r(k2,k3)
d3 = r(k3,k4) + r(k4,kl)
d3 = r(k3,k4) + r(k4,k1)
d = dl + d3
d = d1 + d3
? kl; k2; k3; k4, d
вывод (k1; k2; k3; k4, d)
if mx = 0 then
если тх = 0 то
mx = d: mn = d
mx = d: mn = d
ml = kl: m2 = k2
ml = k1: m2 = k2
m3 = k3: m4 = k4
m3 = k3: m4 = k4
nl = kl: n2 = k2
n1 = k1: n2 = k2
n3 = k3: n4 = k4
n3 = k3: n4 = k4
elseif d > mx then
инеc d > mx то
mx = d
mx = d
ml = kl: m2 = k2
m1 = k1: m2 = k2
m3 = k3: m4 = k4
m3= k3: m4 = k4
elseif d < mn then
инеc d < mn то
mn = d
mn = d
nl = kl: n2 = k2
n1 = k1: n2 = k2
n3 = k3: n4 = k4
n3 = k3: n4 = k4
|