Тип Д25 C2 № 2924 

Алгоритмы обработки массивов. Другие алгоритмы
i
Опишите на русском языке или одном из языков программирования алгоритм вычисления разности между средним арифметическим максимального и минимального значений элементов заданного целочисленного массива из 30 элементов и средним арифметическим всех элементов этого массива.
Спрятать решениеРешение. program C2;
uses crt;
const n=30;
type massiv=array[1..n] of integer;
var a:massiv;
min,max,i,sum:integer;
sred1,sred2:real;
Begin
for i:=1 to n do
begin
write('a[',i,']= ');readln(a[i]);
end;
sum:=0;
min:=a[1];
max:=a[1];
for i:=1 to n do
begin
if a[i] < min then min:=a[i];
if a[i] > max then max:=a[i];
sum:=sum+a[i];
end;
sred1:=(min+max)/2;
sred2:=sum/n;
writeln('Разность: ',sred1-sred2);
End.
Спрятать критерииКритерии проверки:| Критерии оценивания выполнения задания | Баллы |
|---|
| Предложен правильный алгоритм, выдающий верное значение. Допускается запись алгоритма на другом языке, использующая аналогичные переменные. В случае, если язык программирования использует типизированные переменные, описания переменных должны быть аналогичны описаниям переменных на естественном языке. Использование нетипизированных или необъявленных переменных возможно только в случае, если это допускается языком программирования, при этом количество переменных и их идентификаторы должны соответствовать условию задачи. В алгоритме, записанном на языке программирования, допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора программы. | 2 |
| В любом варианте решения может присутствовать не более одной ошибки из числа следующих: 1) не инициализируется или неверно инициализируется переменная; 2) при выводе ответа не учитывается, что требуемого числа в массиве может не быть; 3) отсутствует вывод ответа; 4) в сравнении перепутан знак; 5) неверно осуществляется проверка делимости; 6) на делимость проверяется не значение элемента, а его индекс; 7) в сложном условии вместо логической операции «И» используется логическая операция «ИЛИ»; 8) используется переменная, не объявленная в разделе описания переменных; 9) не указано или неверно указано условие завершения цикла; 10) индексная переменная в цикле не меняется (например, в цикле while) или меняется неверно; 11) неверно расставлены операторные скобки | 1 |
| Ошибок, перечисленных в п. 1–11, две или больше, или алгоритм сформулирован неверно | 0 |
| Максимальный балл | 2 |
А считается ли ошибкой, если в написанной программе вводить числа самостоятельно, а не с помощью рандомного ввода?
В данной задаче речь идет о заданном, а не о произвольном массиве.