В группе определить средний балл после зимней сессии и абсолютную успеваемость. Распечатать ФИО студентов, направленных от завода.
Рассортировать студентов по возрастанию среднего балла. Данные Студентов должны вноситься рандомно.
Моя программа:
Код Pascal
type
stud=record
fio: record
f, im, och : string;
end;
oz: array[1..4] of byte;
Ocenka: string;
end;
var
grup: array [1..30] of stud;
sdali: array [1..30] of stud;
i,j,k,kolstud,n:integer;
function RandomName :String;
var
j,i:integer;
ch:char;
begin
ch:=chr(random(192, 223));
result:=ch;
for i:=1 to random(3, 10) do
begin
ch:=chr(random(224, 255));
result:=result+ch;
end;
end;
function RandomOcenka :String;
begin
result:=result+inttostr(random(1,5) )+inttostr(random(1,5))+inttostr(ra ndom(1,5)); //Оценки за сессию
end;
function PerviySimbol (s: string): String;
begin
delete(s, 2, length(s)-1);
result:=s+'.';
end;
begin
kolstud:=random(15, 30);
n:=1;
for i:=1 to kolstud do
begin
grup[i].fio.f:=RandomName;
grup[i].fio.im:=RandomName;
grup[i].fio.och:=RandomName;
grup[i].Ocenka:=RandomOcenka;
k:=0;
for j:=1 to 4 do
begin
grup[i].oz[j]:=random(2, 5);
if grup[i].oz[j]=2 then inc(k);
end;
if k<>0 then writeln(grup[i].fio.f,' ', PerviySimbol(grup[i].fio.im),
' ',PerviySimbol(grup[i].fio.och),' ',grup[i].Ocenka,' ','от завода')
else
begin
sdali[n]:=grup[i];
inc(n);
end;
end;
end.
Прошу проверить и доработать программу или написать свою