Золотые Серебряные Бронзовые

Буревестник 4 4 4

Динамо 2 4 3

Зенит 6 4 4

Спартак 3 3 4

 

Программа считывает исходные данные, вводимые с клавиатуры, вычисляет общее количество медалей и затем расставляет клубы по порядку в соответ-

ствии с общим количеством медалей. Для представления данных о

количестве медалей используется двумерный массив medal, количество строк которого на единицу больше, чем количество клубов, а количество столбцов на единицу больше, чем видов медалей. Дополнительный столбец используется

 

для хранения общего количества медалей, которое вычисляется после ввода исходных данных, а дополнительная строка — как буфер при обмене строк во время сортировки строк таблицы.

{ Обработка результатов соревнований }

 

Const

NC = 4; { число клубов- участников }

Var

club:array[1..NC + 1] of string[30]; {клуб }

medal:array[1..NC+1,1..4] of integer; {количество медалей }

 

m:integer;

i,j:integer;

Begin

club[1]:='Буревестник';

club[2]:='Динамо ';

club[3]:='Зенит ';

club[4]:='Спартак ';

writeln('Для каждой команды в одной строке введите через пробел');

writeln('число золотых, серебряных и бронзовых медалей');

writeln('и нажмите <Enter>' );

for i:=1 to NC do

Begin

write (club[i], ' ');

readln (medal[i,1],medal[i,2],medal[i,3]);

End;

 

{ подсчет общего количества медалей}

for i:=1 to NC do

Begin

medal[i,4]:=0;

for j:=1 to 3 do

medal[i,4]:= medal[i,4]+medal[i,j];

End;

 

{ сортировка таблицы }

for i:=1 to NC-1 do

Begin

{ найти строку, в которой максимально общее число число

медалей}

m:=i;

for j:=i+1 to NC do

 

if medal[j,4]>medal[m,4] then m:=j;

{обменяем i- строку с m-й }

club[NC+1]:=club[i];

 

club[i]:=club[m];

club[m]:=club[NC+1];

forj:=1 to 4 do

Begin

medal[NC+1,j]:=medal[i,j];

medal[i,j]:=medal[m,j];

medal[m,j]:=medal[NC+1,j];

End;

End;

 

{ вывод итоговой таблицы }

writeln;

writeln(' Клуб Золотые Серебряные Бронзовые Всего');

writeln('** Итоговая таблица **');

for i := 1 to NC do

Begin

write(i:2,'. ',club[i]);

for j:=1 to 4 do

write(medal[i,j]:11);

writeln;

end;

End.

 

Пример работы программы:

 

Для каждой команды в одной строке введите через пробел

число золотых, серебряных и бронзовых медалей

и нажмите <Еnter> ;

Буревестник 4 4 4

Динамо 2 4 3

Зенит 6 4 4

Спартак 3 3 4

 

 

** Итоговая таблица **

Клуб Золотые Серебряные Бронзовые Всего

1. Зенит 6 4 4 14

2. Буревестник 4 4 4 12

3. Спартак 3 3 4 10

4. Динамо 2 4 3 9

 








Дата добавления: 2015-01-13; просмотров: 800;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.009 сек.