Какой минимальный объём памяти (в кбайт) нужно зарезервировать, чтобы можно было сохранить любой растровое изображение размером 32 на 1024 пикселей при условии, что в изображении могут использоваться 128 различных цветов.
Нарисуем диаграмму Эйлера-Венна для всех запросов, содержащих Маркиз (см. вложение). Каждой области на диаграмме соответствует множество результатов, найденных по какому-либо запросу.
Нам необходимо найти общее число результатов, содержащих Маркиз, а также Граф ИЛИ Виконт. Глядя на диаграмму, понимаем, что если сложим количества результатов по запросам Граф, Виконт (круг + прямоугольник), то получим то, что надо, за исключением того, что область пересечения (Граф И Виконт) окажется посчитанной дважды. Тогда, чтобы получить верный ответ, нужно сложить количество ответов на запросы Граф, Виконт и вычесть количество ответов на запрос Граф И Виконт.
Var a : array [1..5, 1..5] of integer; i, j : integer; begin randomize; for i := 1 to 5 do begin for j := 1 to 5 do begin a[i, j] := random (1000); write (a[i, j], ' '); end; writeln; end; for i := 1 to 5 do for j := 1 to 5 do if i > j then a[i, j] := 1 else if j > i then a[i, j] := 0; for i := 1 to 5 do begin for j := 1 to 5 do write (a[i, j], ' '); writeln; end; end.
var a : array [1..4, 1..5] of integer; i, j, m, c : integer; begin randomize; m := 1000; for i := 1 to 4 do begin for j := 1 to 5 do begin a[i, j] := random (1000); if a[i, j] < m then m := a[i, j]; write (a[i, j], ' '); end; writeln; end; c := 0; for i := 1 to 4 do for j := 1 to 5 do if a[i, j] = m then c := c + 1; writeln (m, ' ', c); end.
var a : array [1..4, 1..4] of integer; i, j, p : integer; begin randomize; for i := 1 to 4 do begin for j := 1 to 4 do begin a[i, j] := random (10); write (a[i, j], ' '); end; writeln; end; p := 1; for i := 1 to 4 do begin if a[i, i] <> 0 then p := p * a[i, i]; if a[i, 5 - i] <> 0 then p := p * a[i, 5 - i]; end; writeln (p); end.
Нарисуем диаграмму Эйлера-Венна для всех запросов, содержащих Маркиз (см. вложение). Каждой области на диаграмме соответствует множество результатов, найденных по какому-либо запросу.
Нам необходимо найти общее число результатов, содержащих Маркиз, а также Граф ИЛИ Виконт. Глядя на диаграмму, понимаем, что если сложим количества результатов по запросам Граф, Виконт (круг + прямоугольник), то получим то, что надо, за исключением того, что область пересечения (Граф И Виконт) окажется посчитанной дважды. Тогда, чтобы получить верный ответ, нужно сложить количество ответов на запросы Граф, Виконт и вычесть количество ответов на запрос Граф И Виконт.
320 + 575 - 55 = 840
ответ. 840.
a : array [1..5, 1..5] of integer;
i, j : integer;
begin
randomize;
for i := 1 to 5 do
begin
for j := 1 to 5 do
begin
a[i, j] := random (1000);
write (a[i, j], ' ');
end;
writeln;
end;
for i := 1 to 5 do
for j := 1 to 5 do
if i > j then a[i, j] := 1
else if j > i then a[i, j] := 0;
for i := 1 to 5 do
begin
for j := 1 to 5 do
write (a[i, j], ' ');
writeln;
end;
end.
var
a : array [1..4, 1..5] of integer;
i, j, m, c : integer;
begin
randomize;
m := 1000;
for i := 1 to 4 do
begin
for j := 1 to 5 do
begin
a[i, j] := random (1000);
if a[i, j] < m then m := a[i, j];
write (a[i, j], ' ');
end;
writeln;
end;
c := 0;
for i := 1 to 4 do
for j := 1 to 5 do
if a[i, j] = m then
c := c + 1;
writeln (m, ' ', c);
end.
var
a : array [1..4, 1..4] of integer;
i, j, p : integer;
begin
randomize;
for i := 1 to 4 do
begin
for j := 1 to 4 do
begin
a[i, j] := random (10);
write (a[i, j], ' ');
end;
writeln;
end;
p := 1;
for i := 1 to 4 do
begin
if a[i, i] <> 0 then p := p * a[i, i];
if a[i, 5 - i] <> 0 then p := p * a[i, 5 - i];
end;
writeln (p);
end.