Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Напишите программу, которая высчитывает количество матчей и очков. Сортирует массив по убыванию количества произведенных побед





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

Команды Матчей Побед Ничьих Поражений Очков
Алания          
Динамо          
Зенит          
Локомотив          
Ростсельмаш          
Ротор          
Спартак          

 

Решение:

Program sport;

const

NC=7; {число команд}

Var

team: array[1..NC+1] of string[30]; {команда}

game: array[1..NC+1, 1..5] of integer; {кол-во матчей, побед, ничьих}

m: integer;

i, j: integer;

begin

team[1]: =’Алания ’;

team[2]: =’Динамо ’;

team[3]: =’Зенит ’;

team[4]: =’Локомотив ’;

team[5]: =’Ростсельмаш’;

team[6]: =’Ротор ’;

team[7]: =’Спартак ’;

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

writeln (‘число побед, ничьих и поражений и нажмите < Enter> ’);

writeln;

for i: =1 to NC do

begin

write (team[i], ‘à ’);

readln (game[i, 2], game[i, 3], game[i, 4]);

end;

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

for i: =1 to NC do

begin

game[i, 1]: =game[i, 2]+game[i, 3]+game[i, 4]; {кол-во матчей}

game[i, 5]: =game[i, 2]*3+game[i, 3]; {кол-во очков}

end;

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

for i: =1 to NC-1 do

begin

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

m: =i;

for j: =i+1 to NC do

if game[j, 5]> game[m, 5] then m: =j;

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

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

team[i]: =team[m];

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

for j: =1 to 5 do

begin

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

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

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

end;

end;

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

writeln;

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

writeln (‘---------------------------------------------------------------------------------‘);

writeln (‘ Команда Матчей Побед Ничьих Пораж. Очков’);

writeln (‘---------------------------------------------------------------------------------‘);

for i: =1 to NC do

begin

write (i: 2, ‘.’, team[i]);

for j: =1 to 5 do

write (game[i, j]: 7);

writeln;

end;

writeln (‘--------------------------------------------------------------------------------‘);

writeln (‘Для завершения нажмите < Enter> ’);

readln;

end.

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

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

число побед, ничьих и поражений и нажмите < Enter>

Алания -> 5 6 4

Динамо -> 1 9 5

Зенит -> 8 6 1

Локомотив -> 6 5 4

Ростсельмаш -> 6 6 3

Ротор -> 5 8 2

Спартак -> 9 4 2

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

Команда Матчей Побед Ничьих Пораж. Очков
1. Спартак 15 9 4 2 31
2. Зенит 15 8 6 1 30
3. Ростсельмаш 15 6 6 3 24
4. Локомотив 15 6 5 4 23
5. Ротор 15 5 8 2 23
6. Алания 15 5 6 4 21
7. Динамо 15 1 9 5 12

Для решения нажмите < Enter>

Задание для самостоятельного решения:







Дата добавления: 2014-11-10; просмотров: 762. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


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


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов. МОНО – крупнейший в Великобритании...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Различия в философии античности, средневековья и Возрождения ♦Венцом античной философии было: Единое Благо, Мировой Ум, Мировая Душа, Космос...

Характерные черты немецкой классической философии 1. Особое понимание роли философии в истории человечества, в развитии мировой культуры. Классические немецкие философы полагали, что философия призвана быть критической совестью культуры, «душой» культуры. 2. Исследовались не только человеческая...

Studopedia.info - Студопедия - 2014-2025 год . (0.012 сек.) русская версия | украинская версия