Вопрос задан 17.04.2020 в 00:48. Предмет Информатика. Спрашивает Kudabayeva Gulnaz.

Написать программу на Паскале, где пиксели рисунка закодированы числами (обозначающими цвет) в виде

матрицы, содержащей N строк и M столбцов. Выполните отражение рисунка сверху вниз:
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Кудряков Тимур.
//PascalABC.NET 3.1 сборка 1219
procedure PrintMatrix(a: array[,] of integer);
begin
    for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
    begin
        writeln;
        for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
            write(a[i, j], ' ');
    end;
    writeln;
end;

begin
    var a := MatrixRandom(ReadInteger('n ='), ReadInteger('m ='), 0, 255);
    PrintMatrix(a);
    
    for var i := a.GetLowerBound(0) to (a.GetUpperBound(0) div 2) do
        for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
            swap(a[i, j], a[a.GetLowerBound(0) + a.GetUpperBound(0) - i, j]);
            
    PrintMatrix(a);
end.
0 0
Отвечает Кулынбетова Жибек.

Выделить код1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 uses   graphABC; const   n=100;   m=115; var   a:array[1..n,1..m] of integer;   x,i,j:integer; begin   randomize;   setbrushcolor(clAqua);   rectangle(0,0,windowwidth,windowheight);   for i:=1 to n do     for j:=1 to m do       begin           a[i,j]:=(i*j)*n;       end;   for i:=1 to n do     for j:=1 to m do       setpixel(j+150,i+150,a[i,j]);   for i:=1 to n div 2 do     for j:=1 to m do       begin         x:=a[i,j];         a[i,j]:=a[n-i+1,m-j+1];         a[n-i+1,m-j+1]:=x;       end;   {если матрица нечетная, переставим элементы  средней строки}   if odd(n) then     for i:=1 to n div 2 do       begin         x:=a[n div 2+1,i];         a[n div 2+1,i]:=a[n div 2+1,n-i+1];         a[n div 2+1,n-i+1]:=x;       end;   for i:=1 to n do     for j:=1 to m do       setpixel(j+350,i+150,a[i,j]); end.
0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос