
Vasyuvivv
7 год назад
Оценки в соревнованиях по фигурному катанию выставляются 9 судьями. Потом одна самая низкая и одна самая высокая оценки отбрасываются и в зачет идет среднее арифметическое оставшихся оценок. Составьте программу, которая определяет зачетную оценку спортсмена. Оценки судей ввести с клавиатуры(Целые числа от 1 до 6)
ОТВЕТЫ

Орест
Jul 19, 2019
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]lt;1) or (a[i]gt;6) then kontrol:=false;
if a[i]gt;max then max:=a[i];
if a[i]lt;min then min:=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
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]lt;1) or (a[i]gt;6) then kontrol:=false;
if a[i]gt;max then max:=a[i];
if a[i]lt;min then min:=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
144
Смежные вопросы: