begin
vybor1: = name [hl [1]];
for i: = 2 to t-1 do
if name [hl [i]]
vybor1: = name [hl [i]];
write ('Переможець за ', s' без збереження нейтральності: ');
writeln (vybor1);
writeln ('Сума очок - ', Max);
writeln ('обраний з множини найкращих: ');
for i: = 1 to t-1 do
writeln (name [hl [i]]);
end;
end;
{---------------------------}
{основна програма}
begin
gotoXY (21,1); writeln ('Визначення переможця виборів');
writeln; writeln ('Запуск контрольного прикладу - 1; Самостійне внесення профілю 0');
right;
if c = '1 'then
begin
example;
help;
goto z;
end
else clrscr;
write ('Введіть кількість кандидатів: ');
readln (M);
write ('Введіть кількість виборців: ');
readln (N);
writeln ('Введіть імена кандидатів ');
for i: = 1 to M do
begin
write ('Кандидат ', І': ');
readln (name [i]);
end;
writeln ('Як здійснюватиметься занос
інформації? ');
write ('1 - окремими виборцями, 0 - комітетом: ');
right;
if c = '1 'then
for i: = 1 to N do
many [i]: = 1;
clrscr; writeln ('Введіть профіль переваг ');
s: = 1; contrl: = 0;
while contrl <> N do
begin
if c = '1 'then writeln (' Виборець ', S)
else writeln ('Група', s);
for i: = 1 to m do
n1 [i]: ='';
help;
for j: = 1 to M do
begin
y: readln (vybor1);
{перевірка на коректність введеного профілю}
r: = 0; a: = 0; b: = 0;
n1 [j]: = vybor1;
for l: = 1 to M do
begin
if vybor1 = name [l] then
begin
b: = 1;
for a: = 1 to M do
{таке ім'я вже було введено в даному профілі}
if (Vybor1 = n1 [a]) and ((aj) <> 0) then r: = 1;
end;
{ім'я введеного кандидата не співпадає з жодним із списку}
if (Vybor1 <> name [l]) and (l = M) and
(b <> 1) then r: = 1;
end;
if r = 1 then
begin
n1 [j]: ='';
writeln ('Уважно вводите імена кандидатів ');
goto в;
end
else rang [j, s]: = vybor1; {профіль коректний}
end;
if c = '0 'then
begin
writeln ('Кількість виборців у
групі ', S);
readln (many [s]);
contrl: = contrl + many [s];
end
else
contrl: = contrl +1;
s: = s +1;
clrscr;
end; {While}
{Визначення оцінок Копленда}
z: ...