Дана квадратная матрица порядка n(n=5). Получить элементы массива x, одинаковые среднему

Дана квадратная матрица порядка n(n=5). Получить элементы массива x, одинаковые среднему арифметическому чётных частей еще одного столбца.Паскаль

Задать свой вопрос
Ромка Сдвигов
Если элементы массива надобно инспектировать на четность, то явно, что эти элементы обязаны быть целыми. Среднее арифметическое целым быть не может. Т.е. поставленная задачка в принципе не имеет решения. Можно, окончательно, написать программу по этой постановке задачки, но требуемые элементы НИКОГДА не будут найдены
Капцюг Леонид
Вероятно, x - это новый массив, а не исходный?
Артём Слабенков
Почему "Среднее арифметическое целым быть не может"? Возможность того, что оно будет целым, необыкновенно если все элементы массива целые, не так уж и малюсенька. К примеру, для столбца со значениями 1, 6, 8, 3, 5 среднее арифметическое четных элементов одинаково 7.
2 ответа
Для задачки, в которой x - это одномерный массив, который надобно получить, программка - в прилагаемом файле.
// PascalABC.Net 3.0, сборка 1066

const
  n=5;
var
  a:array[1..n,1..n] of integer;
  x:array[1..n] of double;
  i,j,k:byte;
begin
  Randomize;
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    for j:=1 to n do begin
      a[i,j]:=Random(51)-25;
      Write(a[i,j]:4)
      end;
    Writeln
  end;
  Writeln('*** Массив x ***');
  for j:=1 to n do begin
    x[j]:=0; k:=0;
    for i:=1 to n do
      if a[i,j] mod 2=0 then begin
        x[j]:=x[j]+a[i,j]; Inc(k)
      end;
    if kgt;0 then x[j]:=x[j]/k;
    Write(x[j]:0:5,' ')
    end;
  Writeln
end.

Тестовое решение:
*** Начальный массив ***
 -10  18  -8 -15   5
 -21 -18   6  -2   9
  -7  22  -4   3  14
  21  16 -10 -18  -9
  17   3 -14 -18  12
*** Массив x ***
-10.00000 9.50000 -6.00000 -12.66667 13.00000
Валерия
Кстати, из 5 элементов три оказались целыми....
Виктор Абарун
Тут имелось в виду, что целым переменным нельзя присваивать вещественные значения, даже если разделение производится без остатка. К примеру, если
Алёна Шислер
var k:integer; то k:=14/2 будет ошибкой
Маргарита
Ну это-то бесспорно!
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт