Найти самого старшего мужчину в группе - Turbo Pascal

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

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

Помогите решить лабу.
Описать процедуру старший (Гр,Фам), присваивающую строке Фам фамилию самого старшего мужчины из группы Гр (считать, что такой есть и он единственный). Плиз очень нужно.

Решение задачи: «Найти самого старшего мужчину в группе»

textual
Листинг программы
uses
  Crt;
  
const
  N = 3; {êîëè÷åñòâî ÷åëîâåê Гў ãðóïïå}
 
type
  Date = record
    Day, Month, Year: integer;
  end;
 
  Rec = record
     Surname: string[50];
     BDate: Date;
     Sex: char;
  end;
 
procedure WriteRec(var a: Rec);
begin
  Write('Surname: ');
  ReadLn(a.Surname);
  Write('Day: ');
  ReadLn(a.BDate.Day);
  Write('Month: ');
  ReadLn(a.BDate.Month);
  Write('Year: ');
  ReadLn(a.BDate.Year);
  Write('Sex: ');
  ReadLn(a.Sex);
end;
 
var
  a: array [1..N] of Rec;
  i,maxID: integer;
begin
  ClrScr;
  for i := 1 to N do
    WriteRec(a[i]);
  maxID := 1;
  for i := 2 to N do
    if a[i].BDate.Year < a[maxID].BDate.Year then
      maxID := i
    else
      if a[i].BDate.Month < a[maxID].BDate.Month then
        maxID := i
      else
        if a[i].BDate.Day < a[maxID].BDate.Day then
          maxID := i;
  WriteLn('//--------------------------------------------------------');
  with a[maxID] do
  begin
    WriteLn('Surname: ', Surname);
    WriteLn('Date: ', BDate.Day, '.', BDate.Month, '.', BDate.Year);
    WriteLn('Sex: ', Sex);
  end;
  ReadLn
end.

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

Данный код написан на языке Turbo Pascal и предназначен для поиска самого старшего мужчины в группе. В начале кода объявляются необходимые переменные и типы данных. Затем используется конструкция uses, чтобы импортировать необходимые библиотеки. Далее определяется константа N, которая представляет собой количество мужчин в группе. Затем определяется тип Date, который представляет собой дату в формате ДД.ММ.ГГГГ. После этого определяется тип Rec, который представляет собой запись с информацией о мужчине, включая фамилию, дату рождения, пол и другие данные. Далее объявляется переменная a, которая представляет собой массив из N записей типа Rec. Затем идет цикл for, который перебирает все записи в массиве a. Внутри цикла вызывается процедура WriteRec, которая выводит информацию о текущей записи на экран. После этого определяется переменная maxID, которая будет хранить индекс самого старшего мужчины. Изначально устанавливается значение maxID равным 1. Затем идет еще один цикл for, который перебирает все записи в массиве a. Внутри цикла сравниваются даты рождения текущей записи и предыдущего самого старшего мужчины. Если дата рождения текущего мужчины старше, то обновляется значение maxID. Если месяц или день текущего мужчины старше, то также обновляется значение maxID. После завершения циклов выводится информация о самом старшем мужчине на экран. В конце кода вызывается функция ReadLn, чтобы прочитать ввод пользователя. Таким образом, данный код позволяет найти самого старшего мужчину в группе.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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