uses crt;
const max=30;
type TStud=record
fam:string[15];
ocn:array[1..4] of integer;
srb:real;
end;
var sp:array[1..max] of Tstud;
n,i,j,k,p:integer;
pr:real;
begin
repeat
write('Количество студентов до ',max,' n=');
readln(n);
until n in [1..max];
for i:=1 to n do
begin
writeln('Студент ',i);
with sp[i] do
begin
write(' Фамилия: ');readln(fam);
writeln(' Четыре оценки (2..5):');
srb:=0;
for j:=1 to 4 do
repeat
write('оценка ',j,': ');readln(ocn[j]);
srb:=srb+ocn[j];
until ocn[j] in [2..5];
srb:=srb/4;
end;
end;
clrscr;
writeln('Полный список группы:');
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
begin
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
writeln('');
write('Press Enter...');
readln;
clrscr;
writeln('Повышенная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
if srb=5.0 then
begin
k:=1;
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
writeln('');
if k=0 then writeln('Таких студентов нет.');
write('Press Enter...');
readln;
clrscr;
writeln('Обычная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
begin
p:=0;
while(j<=4)and(p=0) do
if ocn[j]<4 then p:=1
else inc(j);
if (p=0)and(srb<5.0) then
begin
k:=1;
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
end;
writeln('');
if k=0 then writeln('Таких студентов нет.');
end.
uses crt;
const max=30;
type TStud=record
fam:string[15];
oc:array[1..3]of byte;
sr:real;
end;
var sp:array[1..max] of Tstud;
n,i,j,k,p:integer;
begin
clrscr;
repeat
write('Количество студентов до ',max,' n=');
readln(n);
until n in [1..max];
for i:=1 to n do
begin
writeln('Студент ',i);
write(' Фамилия: ');readln(sp[i].fam);
sp[i].sr:=0;
for j:=1 to 3 do
begin
repeat
write(' Оценка ',j,'=');
readln(sp[i].oc[j]);
until sp[i].oc[j] in [3..5];
sp[i].sr:=sp[i].sr+sp[i].oc[j];
end;
sp[i].sr:=sp[i].sr/3;
end;
clrscr;
writeln('Список группы:':30);
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
begin
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
writeln('');
write('Press Enter...');
readln;
clrscr;
writeln('Назначена повышенная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
if sp[i].sr=5.0 then
begin
k:=1;
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
writeln('');
if k=0 then writeln('Назначенных на повышенную стипендию нет.');
write('Press Enter...');
readln;
clrscr;
writeln('Назначена обычная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
begin
p:=0;
for j:=1 to 3 do
if (sp[i].oc[j]=5)or(sp[i].oc[j]=4) then p:=p+1;
if(p=3)and(sp[i].sr<5.0) then
begin
k:=1;
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
end;
writeln('');
if k=0 then writeln('Назначенных на обычную стипендию нет.');
write('Press Enter...');
readln
end.
const max=30;
type TStud=record
fam:string[15];
ocn:array[1..4] of integer;
srb:real;
end;
var sp:array[1..max] of Tstud;
n,i,j,k,p:integer;
pr:real;
begin
repeat
write('Количество студентов до ',max,' n=');
readln(n);
until n in [1..max];
for i:=1 to n do
begin
writeln('Студент ',i);
with sp[i] do
begin
write(' Фамилия: ');readln(fam);
writeln(' Четыре оценки (2..5):');
srb:=0;
for j:=1 to 4 do
repeat
write('оценка ',j,': ');readln(ocn[j]);
srb:=srb+ocn[j];
until ocn[j] in [2..5];
srb:=srb/4;
end;
end;
clrscr;
writeln('Полный список группы:');
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
begin
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
writeln('');
write('Press Enter...');
readln;
clrscr;
writeln('Повышенная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
if srb=5.0 then
begin
k:=1;
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
writeln('');
if k=0 then writeln('Таких студентов нет.');
write('Press Enter...');
readln;
clrscr;
writeln('Обычная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл|');
writeln('');
for i:=1 to n do
with sp[i] do
begin
p:=0;
while(j<=4)and(p=0) do
if ocn[j]<4 then p:=1
else inc(j);
if (p=0)and(srb<5.0) then
begin
k:=1;
gotoXY(1,whereY); write('| ',fam);
gotoXY(17,whereY);write('|');
for j:=1 to 4 do
write(ocn[j]:2);
gotoXY(26,whereY);write('| ',srb:6:2);
gotoXY(35,whereY);writeln('|');
end;
end;
writeln('');
if k=0 then writeln('Таких студентов нет.');
end.
const max=30;
type TStud=record
fam:string[15];
oc:array[1..3]of byte;
sr:real;
end;
var sp:array[1..max] of Tstud;
n,i,j,k,p:integer;
begin
clrscr;
repeat
write('Количество студентов до ',max,' n=');
readln(n);
until n in [1..max];
for i:=1 to n do
begin
writeln('Студент ',i);
write(' Фамилия: ');readln(sp[i].fam);
sp[i].sr:=0;
for j:=1 to 3 do
begin
repeat
write(' Оценка ',j,'=');
readln(sp[i].oc[j]);
until sp[i].oc[j] in [3..5];
sp[i].sr:=sp[i].sr+sp[i].oc[j];
end;
sp[i].sr:=sp[i].sr/3;
end;
clrscr;
writeln('Список группы:':30);
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
begin
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
writeln('');
write('Press Enter...');
readln;
clrscr;
writeln('Назначена повышенная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
if sp[i].sr=5.0 then
begin
k:=1;
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
writeln('');
if k=0 then writeln('Назначенных на повышенную стипендию нет.');
write('Press Enter...');
readln;
clrscr;
writeln('Назначена обычная стипендия:');
k:=0;
writeln('');
writeln('| Фамилия | Оценки | Ср.балл |');
writeln('');
for i:=1 to n do
begin
p:=0;
for j:=1 to 3 do
if (sp[i].oc[j]=5)or(sp[i].oc[j]=4) then p:=p+1;
if(p=3)and(sp[i].sr<5.0) then
begin
k:=1;
gotoXY(1,whereY); write('| ',sp[i].fam);
gotoXY(16,whereY);write('|');
for j:=1 to 3 do write(sp[i].oc[j]:3);
gotoXY(28,whereY);write('|',sp[i].sr:6:2);
gotoXY(38,whereY);writeln('|');
end;
end;
writeln('');
if k=0 then writeln('Назначенных на обычную стипендию нет.');
write('Press Enter...');
readln
end.