Var
min,max,i: byte;
kontrol: boolean;
rez: real;
a: array[1..9] of byte;
begin
min:=6;
max:=1;
rez:=0;
kontrol:=true;
for i:=1 to 9 do begin
write ('введите ',i,'-ю оценку: ');
readln (a[i]);
if (a[i]<1) or (a[i]>6) then kontrol:=false;
if a[i]>max then max:=a[i];
if a[i] rez:=rez+a[i]
end;
rez:=(rez-min-max)/7;
if kontrol=true
then writeln ('Зачетная оценка: ',rez:6:3)
else writeln ('Введены некорректные данные')
end.
_________________________
Пример:
введите 1-ю оценку: 2
введите 2-ю оценку: 3
введите 3-ю оценку: 4
введите 4-ю оценку: 4
введите 5-ю оценку: 4
введите 6-ю оценку: 5
введите 7-ю оценку: 5
введите 8-ю оценку: 5
введите 9-ю оценку: 6
Зачетная оценка: 4.286