Двумерный массив 22. дана матрица размером n*m. выполнить сглаживание в строках матрицы, которое заключается в замене каждого элемента значением среднего арифметического трех стоящих рядом значений.

yuriygabr yuriygabr    1   28.08.2019 08:20    0

Ответы
ХочуЗнатьВсе1 ХочуЗнатьВсе1  06.10.2020 00:13
Const
   N = 3;
   M = 4;
Var
   A:array[1..N,1..M] of real;
   i,j:integer;
   Sr,B,C:real;
Begin
Randomize;
WriteLn('Исходная матрица:');
For i:= 1 to N do
    Begin
    For j:= 1 to M do
        Begin
        A[i,j]:=random()*13;
        Write(A[i,j]:6:3,' ')
        End;
    WriteLn;
    End;
WriteLn;
WriteLn('Сглаженная матрица:');
For i:= 1 to N do
    Begin
    B:=A[i,1];
    C:=A[i,2];
    A[i,1]:=(B+C)/2;
    For j:= 2 to M-1 do
        Begin
        Sr:=(B+C+A[i,j+1])/3;
        B:=A[i,j];
        A[i,j]:=Sr;
        End;
    A[i,M]:=(B+A[i,M])/2
    End;
For i:= 1 to N do
    Begin
    For j:= 1 to M do
        Write(A[i,j]:6:3,' ');
    WriteLn;
    End
End.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика