contrl: = 1;
while contrl <= M do
begin
k: = contrl +1;
vybor1: = name [contrl]; vybor2: = name [k];
while k <= M do
begin
i: = 1; a: = 0; b: = 0;
while i <= s do
begin
for j: = 1 to M do
if rang [j, i] = vybor1 then l: = j
else
if rang [j, i] = vybor2 then r: = j;
if l
else
if l> r then b: = b + many [i];
i: = i +1;
end;
if a> b then
begin
kopl [contrl]: = kopl [contrl] +1;
kopl [k]: = kopl [k] -1;
end
else
if a
begin
kopl [k]: = kopl [k] +1;
kopl [contrl]: = kopl [contrl] -1;
end;
k: = k +1;
vybor2: = name [k];
end; {While по до}
contrl: = contrl +1;
end; {While по contrl}
{визначення оцінок Борда}
for i: = 1 to s do
for j: = 1 to M do
begin
for k: = 1 to M do
if rang [j, i] = name [k] then r: = k;
bord [r]: = many [i] * (M-j) + bord [r];
end;
victory (kopl, 'Коплендом');
writeln ('Натисніть будь-яку клавішу
'); readkey; writeln;
victory (bord, 'Борда');
end.
Результати роботи програми
Самостійне внесення профілю.
Введіть кількість кандидатів: 5
Введіть кількість виборців: 9
Введіть імена кандидатів
Кандидат 1: а
Кандидат 2: b
Кандидат 3: c
Кандидат 4: d
Кандидат 5: е
Як здійснюватиметься занос
інформації?
1-окремими виборцями, 0 -
комітетом: 0
Введіть профіль переваг
Група 1
a
b
c
d
e
Кількість виборців у групі 1: 1
Група 2
c
d
b
e
a
Кількість виборців у групі 2: 4
Група 3
e
a
d
b
c
Кількість виборців у групі 3: 1
Група 4
e
a
b
d
c
Кількість виборців у групі 4: 3
Переможець за Коплендом із збереженням нейтральності - а
Сума очок - 2
Переможець за Борда із збереженням нейтральності - е
Сума очок - 20
Результати роботи програми
В В