Определите среднее арифметическое массива - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, очень нужна помощь с процедурой. Есть готовый код решенной задачи и нужно её переделать под процедуру. Заранее спасибо. Вот условие задачи: Вычислить среднее арифметическое значение тех элементов одномерного массива, которые расположены за первым по порядку минимальным элементом. Размерность массива –10. Заполнение массива осуществить случайными числами от -12 до 25.
Program Zeta;
const
n=10;
var
a:array [1..n] of integer;
i,s,k:integer;
sr:real;
begin clrscr;
randomize;
s:=0;
k:=0;
for i:=1 to n do begin
a[i]:=random(38)-25;
write (a[i],' ');
if (a[i]>-2) and (a[i]<10) then
begin
k:=k+1;
s:=s+a[i];
end;
end;
writeln;
sr:=s/k;
writeln(sr:0:2);
readln;
end.

Решение задачи: «Определите среднее арифметическое массива»

textual
Листинг программы
Program Zeta;
Uses
  Crt;
Const
  N=10;
Var
  Line:array [1..N] of integer;
  I,Imin,Count,Buf:integer;
  Res:real;
 
  Procedure Input;
    begin
      For I:=1 to N do
        begin
          Line[I]:=Random(38)-12;
          Write(Line[I]:3);
        end;
    end;
 
  Procedure Min;
    begin
      For I:=2 to N do
        If Line[I]<Line[Imin] then
          Imin:=I;
    end;
 
  Procedure Average;
    begin
      If Imin<>N then
        begin
          For I:=Imin+1 to N do
            begin
              Inc(Count);
              Buf:=Buf+Line[I];
            end;
          Res:=Buf/Count;
          Writeln('Average: ',Res:2:2);
        end
      Else
        Writeln('Minimalnij element massiva stoit na poslednem meste.');
    end;
Begin
  Randomize;
  ClrScr;
  Imin:=1;
  Buf:=0;
  Count:=0;
  Input;
  WriteLn;
  Min;
  Average;
  ReadKey;
End.

Объяснение кода листинга программы

  1. Объявлены переменные: Line - массив 10 целых чисел; I, Imin, Count, Buf - целочисленные переменные для подсчёта среднего значения; Res - переменная типа real для хранения среднего значения.
  2. Определены процедуры: Input - заполнение массива случайными числами от 12 до 38; Min - поиск минимального элемента в массиве; Average - вычисление среднего значения.
  3. В основной части программы: Выполняется инициализация генератора случайных чисел; Очищается экран; Устанавливаются начальные значения для Imin, Buf и Count; Выполняется процедура Input; Выводится сообщение о нахождении минимального элемента; Выполняется процедура Average; Запрашивается нажатие клавиши.
  4. Если в процессе вычисления среднего значения будет обнаружено, что минимальный элемент стоит на последнем месте, то выводится соответствующее сообщение.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.357 из 5
Похожие ответы