Вопрос задан 23.07.2023 в 06:43. Предмет Информатика. Спрашивает Жанбырбек Шугыла.

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

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

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Олефир Слава.

var

n,i,j,max,k: Integer;

lname, name: array [1..100000] of String;

y,g,a:array [1..100000] of longint;

begin

Read(n);

for i:=1 to n do

begin

read(lname[i]);

read (name[i]);

read(y[i],g[i]);

if (max<g[i]) or (i=1) then

max:=g[i];

end;

for i:=1 to n do

if g[i]=max then

begin

writeln(lname[i], ' ', name[i]);

j:=j+1;

a[j]:=i;

end;

for i:=1 to j do

write(g[a[i]], ' ');

end.



0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи на Паскале, можно воспользоваться следующим кодом:

pascal
program BestScorer; type FootballPlayer = record lastName: string; firstName: string; birthYear: integer; goalsScored: integer; end; var players: array of FootballPlayer; N, i, maxGoals: integer; procedure ReadFootballPlayers; var i: integer; begin for i := 0 to N - 1 do begin readln(players[i].lastName, players[i].firstName, players[i].birthYear, players[i].goalsScored); end; end; procedure FindMaxGoals; var i: integer; begin maxGoals := players[0].goalsScored; for i := 1 to N - 1 do begin if players[i].goalsScored > maxGoals then maxGoals := players[i].goalsScored; end; end; procedure PrintBestScorers; var i: integer; begin for i := 0 to N - 1 do begin if players[i].goalsScored = maxGoals then writeln(players[i].lastName, ' ', players[i].firstName); end; end; procedure PrintGoalsCount; var i: integer; begin for i := 0 to N - 1 do begin if players[i].goalsScored = maxGoals then write(players[i].goalsScored, ' '); end; writeln; // New line after printing goals count end; begin readln(N); SetLength(players, N); ReadFootballPlayers; FindMaxGoals; PrintBestScorers; PrintGoalsCount; end.

Программа сначала считывает количество футболистов в списке и создает массив структур FootballPlayer для хранения информации о каждом футболисте. Затем она считывает данные для каждого футболиста.

Далее, программа находит максимальное количество голов среди всех футболистов в списке. Затем выводит фамилии и имена футболистов, которые забили наибольшее количество мячей, и количество голов, забитых каждым из них.

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

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос