Создать массив из 20 элементов,хранящих информацию о студенках факультета.Каждый элемент содержит фамилию,курс,форму обучения,(специалист,бакалавр,магис тр)и оценки по 5 предметам за последнюю сессию.
Упорядочить массив по среднему баллу.Осуществить перевод студентов на следующий курс.Переводятся студенты ,не имеющие задолжностей за последнюю сессию,студенты 5-ого курса(специалисты) и 6-ого курса(магистры)должны быть удалены ,как окончившие курс обучения.
Решить задачу в Delphi.C помощью процедур и функций.Помогите разобраться...нужно сначало создать запись,потом сортировать,потом процедура перевода на другой курс,там в цикле до 6 или 5 курса проверка,подфункция на проверку двоечников,если они есть удаляем их,если 5 или 6 курс тоже удаляем.я начала.подскажите правильно ли.и как дальше?
program str155n10;
{$APPTYPE CONSOLE}
uses
SysUtils,
windows;
const n=20;
type
Tsession = array[1..20,1..5] of record //Сведения об экзаменах
name: string[10]; //название экзамена
mark: 1..5; //оценка
end;
student = record // Сведения о студенте
FIO: string[40]; // фамилия, имя, отчество
curs: 1..6; // курс
results: Tsession; // сведения об экзаменах
form:string; // форма обучения
end;
TFile=array [1..n] student; // файловая переменная, содержащая сведения о студентах
var k:integer;
fname: string;
a:TFile;
sr: real;
//--
procedure vvoddannuh(var a:TFile); //ввод данных
var i:Integer;
begin
for i:=1 to n do
begin
Writeln('введи ФИО');
Readln(a[i].FIO);
Writeln('введи курс');
Readln(a[i].curs);
Writeln('введи форму обучения');
Readln(a[i].form);
Writeln('введи оценки за последнюю сессию');
Readln(a[i].results);
writeln;
end
end;
Procedure vuvoddannuh(a:TFile); //вывод данных
var i:Integer;
begin
writeln ('--------------------------------------------------------------------------');
writeln (' ФИО / курс / форма обучения / оценки за последнюю сессию ');
writeln ('--------------------------------------------------------------------------');
for i:=1 to n do
writeln(a[i].curs:15,' ',a[i].FIO:15,' ',a[i].form:5,' ',a[i].ball:15);
end;
//------------------------------------------------------------------------------------------
procedure Perevod( a:TFile);
var i:Integer;
i:=1;k:=0;
while i<=n-k
Function Dvoechniki(a:TFile);
var i:integer;
begin
write('Оценки за последнюю сессию ');
readln(results);
for i:=1 to n do
if a[i].results < 3 then
delete(a, i, 1)
k:=k+1;
end;