Напишите программу в паскале, которая выбирает из списка футболистов, год рождения...

+183 голосов
1.9m просмотров

Напишите программу в паскале, которая выбирает из списка футболистов, год рождения которых находится в диапазоне от K до M , и которые забили за сезон ровно B мячей. Входные данные В первой строке вводятся три числа: K , M и B . Во второй строке записано количество футболистов в списке N . Следующие N строк имеют формат: <фамилия> <имя> <год рождения> <число забитых мячей> Выходные данные Программа должна вывести фамилии и имена тех футболистов, год рождения которых находится в диапазоне от K до M , и которые забили за сезон ровно B мячей. В последней строке программа выводит количество футболистов в итоговом списке.


Информатика | 1.9m просмотров
+152

не заметил)

+104

ой

+167

язык

Дан 1 ответ
+105 голосов

PascalABC.NET

  • type Футболист = class
  •  name, fname: string;
  •  birthYear, goalsScored: integer;
  •  constructor Create(s: string);
  •  begin
  •    var v := s.ToWords;
  •    (fname, name, birthYear, goalsScored) := (v[0], v[1], StrToInt(v[2]), StrToInt(v[3]))
  •  end;
  • end;
  • begin
  •  var (K, M, B) := ReadInteger3('K, M, B:');
  •  var N := ReadlnInteger('N:');
  •  var a := ArrGen(N, i -> new Футболист(ReadString(i+1+':')));
  •  var a2 := a.Where(x -> (x.birthYear in K..M) and (x.goalsScored = B));
  •  Println('Итоговый список:');
  •  a2.PrintLines(x -> '  • ' + x.fname + ' ' + x.name);
  •  Print('Количество:', a2.Count);
  • end.
(3.7k баллов)