1. Чему равна битовая глубина, если палитра состоит из 128 цветов?
2. Какой объем видеопамяти в байтах потребуется
для хранения черно-белого изображения с
двумя градациями серого, если одна клетка
соответствует одному пикселю. (см. рис)
3. Какой объем видеопамяти (Кбайтов ) потребуется для обработки изображения размером 256×512 пикселей и
глубине кодирования 32 бита?
4. Изображение размером 256 × 128 пикселей занимает 8 Кбайт памяти. Каково максимально возможное число
цветов в палитре?
5. Сколько изображений можно сохранить на внешнем носителе, объёмом 25 Мбайтов, если размер
изображения составляет 4096 × 3072 пикселей, а само изображение создано с использованием 64-цветной
палитры?
GraphABC;
var
x, y: integer;
s: array of string;
b: GraphABC.Point;
begin
s := System.IO.File.ReadAllLines('in.txt');
foreach a: string in s do
begin
X := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[0]);
Y := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[1]);
if not (b.IsEmpty) then
GraphABC.LineTo(X, Y)
else
begin
GraphABC.MoveTo(X, Y);
b := new Point(x, y);
end;
DrawCircle(x, y, 10);
end;
LineTo(b.X, b.Y);
end.
Код, конечно, вырвиглазный, зато работает и прочитать его относительно легко:)
Содержимое файла in.txt (для теста)
(50; 50)
(90; 50)
(90; 90)
(50; 90)
var a: integer;
readln(a);
for i: integer := 1 to abs(a) do
if (a mod i = 0) then
writeln('> ', i);
end.
function Simple(a: integer): boolean;
begin
result := true;
for i: integer := 2 to (a div 2) do
if (a mod i = 0) then
begin
result := false;
break;
end;
end;
begin
var a: integer;
readln(a);
writeln(Simple(a));
end.
var
a: integer;
begin
readln(a);
for i: byte := length(a.ToString()) downto 1 do
write(a.ToString()[i]);
end.
function Simple(a: integer): boolean;
begin
result := true;
for i: integer := 2 to (a div 2) do
if (a mod i = 0) then
begin
result := false;
break;
end;
end;
function par(a: integer): string;
begin
for i: byte := length(a.ToString()) downto 1 do
result += a.ToString()[i];
end;
begin
var a: integer;
readln(a);
for i: integer := 1 to abs(a) do
if ((a mod i = 0) and (Simple(a)) and (par(a) = inttostr(i))) then
writeln('> ', i);
end.