Содержание
Задача 3. 3
Задача 4. 5
Задача 5. 7
Задача 6. 8
Задача 3.
Решение
uses crt;
Const
N=3;
Type
Vedomost=Record{Запись ведомость}
fio:string;{фамилия}
pr1:integer;{1 оценка}
pr2:integer;{2}
pr3:integer;{3}
end;
Var
mas:array [1..N] of Vedomost;{массив списков}
o:array [1..N] of string;{массив индексов повышенной и обычной стипендии}
i,j:integer;{параметры цикла}
sr:real;{средний балл}
begin
clrscr;
for i:=1 to N do{ввод данных}
with (mas[i]) do
begin
writeln('Vvedite FIO studenta');
readln(fio);
writeln('Ocenka po pervomu predmetu');
readln(pr1);
writeln('Ocenka po vtoromu predmetu');
readln(pr2);
writeln('Ocenka po tret''emu predmetu');
readln(pr3);
writeln;
end;
clrscr;
for i:=1 to N do
begin
with mas[i] do
begin
if (pr1=5) and (pr2=5) and (pr3=5) then o[i]:='p' {поиск отличников}
else
if (pr1>3) and (pr1>3) and (pr3>3) then o[i]:='o'{поиск хорошистов}
else
o[i]:='n';
sr:=(pr1+pr2+pr3)/3;{подсчет среднего балла}
write(fio,' ','Ocenki:',pr1:4,pr2:4,pr3:4,' sredniy ball:',sr:6:2);{вывод на экран}
writeln;
end;
end;
Writeln('Povishennaya stipendia:');{Вывод студентов с повышенной стипендией}
For i:=1 to n do
if o[i]='p' then writeln(mas[i].fio);
Writeln('Obichnaya stipendia:');{Вывод студентов с обычной стипендией}
writeln;
For i:=1 to n do
if o[i]='o' then writeln(mas[i].fio);
readln;
end.
Пример выполнения программы
Vvedite FIO studenta
Petrov
Ocenka po pervomu predmetu
5
Ocenka po vtoromu predmetu
4
Ocenka po tret'emu predmetu
5
Vvedite FIO studenta
Sidorov
Ocenka po pervomu predmetu
5
Ocenka po vtoromu predmetu
5
Ocenka po tret'emu predmetu
5
Vvedite FIO studenta
Ivanov
Ocenka po pervomu predmetu
3
Ocenka po vtoromu predmetu
3
Ocenka po tret'emu predmetu
3
Petrov Ocenki: 5 4 5 sredniy ball: 4.67
Sidorov Ocenki: 5 5 5 sredniy ball: 5.00
Ivanov Ocenki: 3 3 3 sredniy ball: 3.00
Povishennaya stipendia:
Sidorov
Obichnaya stipendia:
Petrov