Заменить отрицательные элементы, расположенные выше главной диагонали, средним геометрическим положительных - Pascal

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

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

Ребят, не могли бы помочь? Есть задача:в матрице a(8,8) заменить отрицательные элементы расположенные выше главной диагонали, средним геометрическим положительных чисел.
Var
  i,j,k:integer;
  a:array[1..8,1..8]of integer;
begin
for i:=1 to 8 do
begin
for j:=1 to 8 do
begin
a[i,j]:=random(20);
write (a[i,j]:4);
end;
writeln;
end;
for i:=1 to 8 do
for j:=1 to 8 do

writeln;
end.
(В общем, ребят не могли бы помочь, сам чет не допру никак, что нужно изменить или дописать вместо пропуска. А мне срочно эта задача нужна!!! Заранее спасибо огромное!)

Решение задачи: «Заменить отрицательные элементы, расположенные выше главной диагонали, средним геометрическим положительных»

textual
Листинг программы
const
    N = 8;
var
    ar: Array[1..N, 1..N] Of Real;
    i, j: 1..N;
    count: 0..N*N;
    avr: Real;
begin
    Randomize;
    WriteLn('Original array:');
    count := 0; avr := 0;
    for i := 1 to N do
    begin
        for j := 1 to N do
        begin
            ar[i, j] := Random * 198 - 99;
            Write(ar[i, j]:7:2);
            if (ar[i, j] > 0)
            then
            begin
                Inc(count);
                avr := avr + ar[i, j];
            end;
        end;
        WriteLn;
    end;
    if (count > 0)
    then
        avr := avr / count;
    for i := 1 to N - 1 do
        for j := i + 1 to N do
            if (ar[i, j] < 0)
            then
                ar[i, j] := avr;
    WriteLn('Modified array:');
    for i := 1 to N do
    begin
        for j := 1 to N do
            Write(ar[i, j]:7:2);
        WriteLn;
    end;
end.

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

  1. N - константа, значение которой равно 8
  2. ar - массив размером 8x8 для хранения вещественных чисел
  3. i - переменная для цикла от 1 до N
  4. j - переменная для цикла от 1 до N
  5. count - переменная типа целое число от 0 до N*N
  6. avr - переменная для хранения среднего арифметического положительных чисел Далее выполняются следующие действия:
    • Инициализация генератора случайных чисел
    • Вывод сообщения Original array:
    • Обнуление переменных count и avr
    • Цикл для заполнения массива числами и подсчета среднего арифметического положительных чисел
    • Проверка, если количество положительных чисел в массиве больше 0, то вычисление среднего арифметического
    • Цикл для замены отрицательных элементов, расположенных выше главной диагонали, на среднее арифметическое положительных чисел
    • Вывод сообщения Modified array:
    • Цикл для вывода измененного массива Код генерирует массив случайных чисел, затем находит среднее арифметическое положительных чисел и заменяет отрицательные числа, расположенные выше главной диагонали, на это среднее значение. Наконец, выводит измененный массив.

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


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

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

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