Написать программу, которая позволяет ввести имя bmp-файла, считать его заголовки и вывести на консоль информацию о размере файла, ширине и
высоте в пикселях, количестве бит на пиксель, разрешении горизонтальном
и вертикальном (количестве пикселей на метр), типе сжатия (без сжатия / 4бит
RLE / 8бит RLE). Подготовьте несколько файлов изображений и проверьте на
них Вашу программу.
const
nn=30;
mm=30;
var
a:array[1..mm,1..nn] of integer;
m,n,i,j,imax,jmax:integer;
begin
Writeln('Введите число строк и столбцов массива: '); Read(m,n);
Randomize;
Writeln('*** Исходный массив ***');
imax:=1; jmax:=1;
for i:=1 to m do begin
for j:=1 to n do begin
a[i,j]:=Random(51)-25;
Write(a[i,j]:4);
if a[i,j]>a[imax,jmax] then
begin imax:=i; jmax:=j end
end;
Writeln
end;
for i:=1 to m do a[i,jmax]:=0;
for j:=1 to n do a[imax,j]:=0;
Writeln('*** Результирующий массив ***');
for i:=1 to m do begin
for j:=1 to n do Write(a[i,j]:4);
Writeln
end
end.
Тестовое решение:
Введите число строк и столбцов массива:
5 8
*** Исходный массив ***
11 -10 -25 -25 -19 -3 -2 0
-24 1 5 -25 -21 -16 -16 -22
-21 -10 -12 7 20 16 0 -10
-13 25 -18 18 -5 9 15 1
-19 -10 -16 9 -11 11 24 -19
*** Результирующий массив ***
11 0 -25 -25 -19 -3 -2 0
-24 0 5 -25 -21 -16 -16 -22
-21 0 -12 7 20 16 0 -10
0 0 0 0 0 0 0 0
-19 0 -16 9 -11 11 24 -19
2. Длина слов сохранилась, как было три пятибуквенных имени и три шестибуквенных, так и осталось, следовательно одни символы были заменены на другие.
3. В имени Филипп две последние буквы совпадают и среди закодированных слов есть одно шестибуквенное тХКХОО, в котором совпадают две последние буквы. Также есть имя Максим, в котором первая и последняя буквы совпадают, а среди закодированных есть шестибуквенное лЮЙЯХЛ. На этом основании предполагаем, что произведена подмена одной буквы другой, причем подмена постоянная, т.е. конкретная буква всегда подменяется одной и той же.
4. Мы нашли два шестибуквенных имени, следовательно третье (Густав) закодировано как цСЯРЮБ.
5. Среди пятибуквенных имен два начинаются на одну и ту же букву (А), а среди закодированных имен есть два, начинающиеся на "ю", тогда оставшееся бЮДХЛ - это имя Вадим.
6. В слове юМРНМ совпадают вторая и последняя буквы. В имени Антон они также совпадают, следовательно оставшееся юПР╦Л - это Артём.
Окончательно:
юПР╦Л - Артём
юМРНМ - Антон
бЮДХЛ - Вадим
лЮЙЯХЛ - Максим
цСЯРЮБ - Густав
тХКХОО - Филипп