20-Length(Champ[i].mName)

Здесь учет длины названия команды обеспечивает ровную печать столбцов, стоящих правее.

Дополнительное время

Надеюсь, вы оценили приятный вкус структурных данных. Так продлим удовольствие, назначив после второго тайма дополнительное время. Соорудим третью версию программы, способную воспринимать и другие данные о командах, например, количество выигрышей и проигрышей. Для хранения этих новых сведений, очевидно, нужна память, то есть переменные. Но теперь обойдёмся без дополнительных массивов: объявим внутри записи TTeam ещё пару полей.

type TTeam = record

      mAces : integer; { набранные очки }

      mName : string; { названия команд }

      mWins : integer; { количество выигрышей }

      mFails: integer; { количество проигрышей }

      end;

Внутрь каждого элемента массива Champ подселены ещё два поля, осталось лишь организовать ввод и вывод этих данных. Но к процедуре сортировки BubbleSort прикасаться уже не надо, – она не изменится! Поэтому в показанной ниже программе «P_50_2» я не стал её повторять. Не стал я заниматься и обработкой поля mFails – количество проигрышей. Уверен, что вы и без меня справитесь с этим.

{ P_59_2 – Футбольный чемпионат (версия 3) }

const CSize = 4; { количество команд }

      { объявление типов }

type TTeam = record

      mAces : integer; { набранные очки }

      mName : string; { названия команд }

      mWins : integer; { количество выигрышей }

      mFails: integer; { количество проигрышей }

      end;

      TChamp = array [1..CSize] of TTeam; { тип для массива команд }

var Champ : TChamp; { массив команд }

{ Процедура пузырьковой сортировки не изменилась! }

procedure BubbleSort(var arg: TChamp);

...

end;

var i: integer;

begin       {--- Главная программа ---}

{ Вводим названия команд, набранные очки и прочие данные }

for i:=1 to CSize do begin

      Write('Название команды: '); Readln(Champ[i].mName);

      Write('Набранные очки: '); Readln(Champ[i].mAces);

      Write('Выигрышей: ');       Readln(Champ[i].mWins);

end;

{ сортируем }

BubbleSort(Champ);

{ Выводим результаты }

Вы читаете Песни о Паскале
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату