Напечатать все фамилии людей из группы, начинающиеся с заданной буквы - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

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

Решение задачи: «Напечатать все фамилии людей из группы, начинающиеся с заданной буквы»

textual
Листинг программы
procedure Print(const g: group; c: Char);
var i: Integer;
begin
  for i:=Low(g) to High(g) do with g[i], g[i].birthday do
    if c=Copy(last_name,1,1) then
      WriteLn(last_name,' ',number,'.',month,'.',year);
end;

Объяснение кода листинга программы

Данный код написан на языке Turbo Pascal и представляет собой процедуру, которая печатает все фамилии людей из группы, начинающиеся с заданной буквы. Внутри процедуры есть цикл, который проходит по всем элементам группы (от Low(g) до High(g)). Для каждого элемента внутри цикла проверяется условие: если первый символ фамилии равен заданной букве (которую мы передаем в качестве параметра), то фамилия выводится на экран. Для вывода фамилии используется функция WriteLn, которая записывает строку в файл (в данном случае в стандартный вывод). В качестве аргументов функции WriteLn используются строка (last_name), пробел, номер (number), точка, месяц и год (month и year соответственно). Переменная i принимает значения от 0 до 20 (так как Low(g) возвращает 0, а High(g) возвращает 20), и для каждого значения i внутри цикла происходит проверка условия. Таким образом, данный код позволяет вывести на экран все фамилии людей из группы, начиная с заданной буквы.

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы