На чемпионате мира по танцам выступает 6 танцоров. Они выступают сначала в короткой программе, а затем в произвольной. Известны оценки 10 судей каждого танцора в каждой программе. При этом из 10 оценок исключается одна наименьшая и одна наибольшая оценка, а по оставшимся высчитывается средняя оценка за программу. Победитель определяется по сумме баллов за обе программы. Определить победителя.
Одномерный массив. Паскаль
Answers & Comments
Надеюсь я все учел, достаточно объемная и сложная задача...
Var o,l:integer;
a,b,max2:real;
procedure rip (var x,t:real; i:integer);
var q,min,max:integer;
a1:array [1..10] of integer;
begin
writeln ('Введите через пробел оценки за короткую программу танцора номер ',i);
For q:=1 to 10 do begin
read (a1[q]);
t:=a1[q]+t;
end;
min:=a1[1];
max:=min;
For q:=2 to 10 do begin
If a1[q]<min then min:=a1[q];
If a1[q]>max then max:=a1[q];
end;
t:=(t-max-min)/8;
writeln ('Введите через пробел оценки за произвольную программу танцора номер ',i);
For q:=1 to 10 do begin
read (a1[q]);
x:=a1[q]+x;
end;
min:=a1[1];
max:=min;
For q:=2 to 10 do begin
If a1[q]<min then min:=a1[q];
If a1[q]>max then max:=a1[q];
end;
x:=(x-max-min)/8;
end;
begin
For o:=1 to 6 do begin
rip (a,b,o);
If (a+b)>max2 then begin max2:=a+b; l:=o; end;
end;
writeln (l);
end.