Найти количество элементов вещественной матрицы a[1.n,1.n], модуль разности между которыми и средним арифметическим эл - PascalABC.NET

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

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

Найти количество элементов вещественной матрицы a[1..n,1..n], модуль разности между которыми и средним арифметическим элементов матрицы более 1.

Решение задачи: «Найти количество элементов вещественной матрицы a[1.n,1.n], модуль разности между которыми и средним арифметическим эл»

textual
Листинг программы
const
  n = 10;
type
  ta = array[1..n, 1..n] of real;
  
procedure average(const a : ta; var av : real);
var i, j : integer;
begin
  av := 0;
  for i:=1 to n do
    for j:=1 to n do av:=av+a[i,j];
  av := av / sqr(n);
end;
procedure proc_count(const a : ta; av : real; var c : integer);
var i, j : integer;
begin
  c := 0;
  for i:=1 to n do
    for j:=1 to n do if abs(a[i,j]-av)>1 then inc(c);
end;
 
var
  a: ta;
  i, j, count: integer;
  avr: real;
begin
  writeln('Matrix:');
  for i:=1 to n do
  begin
    for j:=1 to n do
    begin
      a[i,j]:= -2 + random * 4; // случайное в диапазоне от -2 до 2
      write(a[i,j]:8:3);
    end;
    writeln;
  end;
  average(a, avr:8:3);
  writeln('Average = ',avr);
  proc_count(a, avr, count);
  writeln('Count = ',count);
end.

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

В данном коде реализованы две процедуры для работы с вещественной матрицей a[1.n,1.n]:

  1. procedure average(const a : ta; var av : real) - находит среднее арифметическое элементов матрицы a и сохраняет его в переменной av.
  2. procedure proc_count(const a : ta; av : real; var c : integer) - подсчитывает количество элементов матрицы a, модуль разности между которыми и средним арифметическим (переменная av) больше единицы, и сохраняет это количество в переменной c. Также в коде определены следующие переменные:
    • const n = 10; - размерность матрицы a
    • type ta = array[1..n, 1..n] of real; - тип матрицы a
    • var i, j : integer; - целочисленные переменные для перебора элементов матрицы
    • var avr: real; - переменная для хранения среднего арифметического
    • var count: integer; - переменная для подсчета количества элементов В основном блоке кода:
  3. Создается случайная матрица a размером 10x10 с помощью цикла и генератора случайных чисел.
  4. Вычисляется среднее арифметическое элементов матрицы с помощью процедуры average.
  5. Выводится среднее арифметическое на экран.
  6. Подсчитывается количество элементов матрицы, модуль разности между которыми и средним арифметическим больше единицы, с помощью процедуры proc_count.
  7. Выводится количество элементов на экран.

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


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

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

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