Помощь с заданием

Не понимаю как сделать ...

Введите массив, состоящий из 10 записей, содержащих поля: ФИО, Год рождения, Пол, Признак («В» - военнообязанный, «Н» - невоеннообязанный). Вывести данные о военнообязанных юношах, достигших 18 лет в виде таблицы:

№ ФИО Год рождения

1 ------- ---------------------

2 ------- ---------------------

3 ------- ---------------------


Ответы (3 шт):

Автор решения: Valeriy M. Raznomazov

вот ваш код

program Hello;
var
A:array [0..10,0..4] of string;
i, year,year2:integer;

begin
for i:=1 to 4 do
begin
  writeln ('Введите данные индивидумов');
  writeln('Введите ФИО');
  readln(A[i,1]);
  writeln('Введите год рождения');
  readln(A[i,2]);
  writeln('Введите пол');
  readln(A[i,3]);
  writeln('Введите отношение к воинской обязанности');
  readln(A[i,4])
  end;

writeln ('Введите какой сегожня год');
readln(year);
for i:=1 to 4 do
begin
year2:=StrToInt(A[i,2])
If A[i,3]='М' and year-year2>18 then wrinteln(A[i,1],A[i,2],A[i,3],A[i,4])
end;
end.
→ Ссылка
Автор решения: fauX

Плохо помню паскаль, но это работает. (При необходимости доработайте)

const 
  len = 9;
var
  arr : array[0..len] of string; //ФИО
  arr2 : array[0..len] of string;//Пол
  arr3 : array[0..len] of integer;//Год рождения
  arr4 : array[0..len] of char;//Признак
  i:integer;
  count:integer;
begin
  count:=1; 
  for i:=0 to len do
    begin
      readln(arr[i]);
      readln(arr2[i]);
      readln(arr3[i]);
      readln(arr4[i]);

      if (2020-arr3[i]>=18) and (arr4[i]='В') and (arr2[i]='М') then
        begin
        writeln(count,arr[i],arr2[i],arr3[i],arr4[i]);
        inc(count);
        end;
    end;
  writeln(arr2[0]);
end.
→ Ссылка
Автор решения: Valeriy M. Raznomazov

с рекордом будет так

program Hello;
type
S = record
fio: char;
year: integer;
sex:char;
MilitaryStatus:char;
end;
var
A: array [1..10] of S;
i, year,year2:integer;

begin
for i:=1 to 4 do
begin
  writeln ('Введите данные индивидумов');
  writeln('Введите ФИО');
  readln(A[i].fio);
  writeln('Введите год рождения');
  readln(A[i].year);
  writeln('Введите пол');
  readln(A[i].sex);
  writeln('Введите отношение к воинской обязанности');
  readln(A[i].MilitaryStatus)
  end;

writeln ('Введите какой сегодня год');
readln(year);
for i:=1 to 4 do
begin
year2:=year-A[i].year;
If (A[i].sex='М') and (year2>18) then writeln(A[i].fio,A[i].year,A[i].sex,A[i].MilitaryStatus);
end;
end.


при необходимости доработайте

→ Ссылка