Написать список студентов в порядке убывания по фамилии - Pascal ABC

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

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

Люди добрые, помогите с задачей, если есть таковы! "Написать список студентов в порядке убывания по фамилии."

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

textual
Листинг программы
const n = 10;
type date = record
       imia : string;
       familia : string;
       otenca : real;
     end;
     
var list : array [1..n] of date;
    i, x, y : byte;
    d : date;
    
begin
  for i := 1 to n do
  begin
    write ('Введите имя студента: ');
    readln (list[i].imia);
    write ('Введите фамилию студента: ');
    readln (list[i].familia);
    write ('Введите оценку студента: ');
    readln (list[i].otenca);
  end;
  
  for x := 1 to n-1 do
    for y := 1 to n-x do
    begin
      if list[y].familia < list[y+1].familia then
      begin
        d := list[y];
        list[y] := list[y+1];
        list[y+1] := d;
      end
    end;
 
  for i := 1 to n do
    writeln (list[i].imia, ' ', list[i].familia);
end.

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

В данном коде происходит следующее:

  1. Создается константа n, которая определяет количество студентов, которых мы будем вводить.
  2. Создается тип данных date, который представляет собой структуру с тремя полями: именем, фамилией и оценкой студента.
  3. Создается переменная list, которая представляет собой массив из n элементов типа date.
  4. Создаются три переменные: i, x и y, которые будут использоваться для цикла чтения данных о студентах и сортировки массива.
  5. Запускается цикл for i := 1 до n, внутри которого происходит чтение данных о студенте с помощью функции readln. Данные записываются в соответствующие поля структуры date, которая затем сохраняется в массиве list.
  6. Запускается вложенный цикл for x := 1 до n-1, внутри которого происходит сравнение фамилий студентов и их сортировка. Если фамилия текущего студента меньше фамилии следующего студента, то данные текущего студента перезаписываются данными следующего студента.
  7. После завершения внешнего цикла, происходит вывод отсортированного списка студентов на экран. Таким образом, данный код позволяет ввести данные о студентах и отсортировать их в порядке убывания по фамилии.

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


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

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

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