01 семестр / К экзамену-зачёту / Все задачи с экзамена в формате PAS / выбирает группу и фамилию отличника
.docprogram magazine;
uses crt;
const nos=3;
nom=4;
type student=record
name:string[20];
group:string[5];
mark:array[1..nom] of shortint;
end;
var
b:array [1..nom] of boolean;
i,o:integer;
mag:array[1..nos] of student;
f:text;
begin
clrscr;
for i:=1 to nos do begin
write ('Введите имя: ');
readln (mag[i].name);
write ('Введите группу:');
readln (mag[i].group);
for o:=1 to nom do begin
write ('Введите ',o,'-ую оценку: ');
readln (mag[i].mark[o]);
end;
end;
writeln ('Ввод базы данных завершен');
readln;
clrscr;
for i:=1 to nos do begin
write (i,' ');
writeln ('Имя : ',mag[i].name);
writeln ('Группа: ',mag[i].group);
for o:=1 to nom do begin
writeln (o,'-я оценка: ',mag[i].mark[o]);
end;
end;
writeln;
writeln ('ОТЛИЧНИКИ И ХОРОШИСТЫ');
assign (f,'magazine.txt');
rewrite (f);
writeln (f,'---------- Журнал ОТЛИЧНИКОВ и ХОРОШИСТОВ ----------');
for i:=1 to nos do begin
b[i]:=false;
for o:=1 to nom do begin
if (mag[i].mark[o])<4 then b[i]:=true;
end;
if (b[i]=false) then begin
writeln (f,'Студент: ',mag[i].name);
write ('Имя: ',mag[i].name);
writeln (f,'Группа : ',mag[i].group);
writeln (' Группа: ',mag[i].group);
for o:=1 to nom do writeln (f,o,'-я оценка: ',mag[i].mark[o]);
writeln (f,'');
end;
end;
close (f);
writeln ('Задание выполнено');
readln;
end.