Помощь - Поиск - Пользователи - Календарь
Полная версия: задача
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
NikiTaMoz
В группе определить средний балл после зимней сессии и абсолютную успеваемость. Распечатать ФИО студентов, направленных от завода.
Рассортировать студентов по возрастанию среднего балла. Данные Студентов должны вноситься рандомно.

Моя программа:

Код 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.

Прошу проверить и доработать программу или написать свою
Федосеев Павел
Цитата
Прошу проверить и доработать программу или написать свою
Вот так и после учёбы на работе к коллегам... Результат однозначный - разница лишь в формулировках.

Лучше говори, что не так с программой, зачем такие манипуляции с мозгом и клавиатурой?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.