Переделайте программу в подпрограмный - Pascal
Формулировка задачи:
Помогите плиз переделайте программу из линейной в подпрограмный с использованием процедур и функций!ПЛИЗ НА ЗАВТРА НАДО ЗАКРЫТЬ МОДУЛЬ!
Решение задачи: «Переделайте программу в подпрограмный»
textual
Листинг программы
uses crt; const n=3; m=5; type stud=record fio:string[12]; bal:byte; end; grup=record naz:string[5]; otl:byte; std:array[1..m] of stud; srb:real; end; mas=array[1..n] of grup; procedure Vvod(var gr:mas); var i,j:byte; begin writeln('Введите данные о студентах:'); for i:=1 to n do begin writeln('Группа ',i); repeat write(' Название из 5 символов: ');readln(gr[i].naz); until length(gr[i].naz)=5; gr[i].srb:=0;gr[i].otl:=0; for j:=1 to m do begin write(' Фамилия И.О.: ');readln(gr[i].std[j].fio); repeat write(' Балл (2-5): ');readln(gr[i].std[j].bal); until gr[i].std[j].bal in [2..5]; if gr[i].std[j].bal=5 then gr[i].otl:=gr[i].otl+1; gr[i].srb:=gr[i].srb+gr[i].std[j].bal; end; gr[i].srb:=gr[i].srb/m; end; end; procedure Sort(var gr:mas); var i,j:byte; x:grup; begin for i:=1 to n-1 do for j:=i+1 to n do if gr[i].otl<gr[j].otl then begin x:=gr[i]; gr[i]:=gr[j]; gr[j]:=x; end; end; procedure Vyvod(var gr:mas); var i,j:byte; begin for i:=1 to n do begin writeln('Группа ',gr[i].naz); for j:=1 to m do begin writeln(' Данные о студентах:'); writeln(' ',gr[i].std[j].fio); writeln(' ',gr[i].std[i].bal); end; writeln(gr[i].srb:0:2); write('Число отличников= '); writeln(gr[i].otl); end; end; var gr:mas; begin clrscr; Vvod(gr); Sort(gr); Vyvod(gr); readln end.
Объяснение кода листинга программы
- В начале кода объявлены все необходимые переменные и константы.
- Тип данных
stud
представляет информацию о студенте и содержит поляfio
(фамилия и инициалы) иbal
(балл). - Тип данных
grup
представляет информацию о группе студентов и содержит поляnaz
(название группы),otl
(количество отличников),std
(массив студентов этого группы) иsrb
(средний балл группы). - Массив
mas
содержит информацию о всех группах студентов. - Процедура
Vvod
считывает данные о студентах и заполняет массивmas
. - Процедура
Sort
сортирует группы студентов по убыванию количества отличников. - Процедура
Vyvod
выводит данные о студентах и результаты работы программы. - В основной части кода создается экземпляр массива
mas
, вызываются процедурыVvod
,Sort
иVyvod
, а затем программа ожидает ввода пользователя для завершения работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д