• Складіть блок-схему алгоритму, наведеного в завданнi 1. Виконаи те цей алгоритм для трьох різних пар пілих чисел. Доберт так, щоб для різних пар виконання алгоритму відбувалос різному.
Все задачи однотипные, нужно знать понятия глубины цвета и как расчитывается объём для растрового изображения. 1.всего пикселей 128*128= 2^14(2 в 14-ой степени) так как 32 цвет, то один символ кодируется 5 битами (log2(32), если бы было 33 цвета то уже бы потребовалось 6 бит, так как 5 бы не хватило). Нам нужно в килобайтах значит нужно разделить на 2^13 (т.к. в 1 кбайте 2^13 бит)
// Внимание! Если программа не работает, обновите версию!
№1
begin
var a:=ArrRandom(12,-23,42); a.Println;
for var i:=0 to a.Length-1 do
if a[i]<10 then a[i]:=i+1;
a.Println
end.
Пример
26 25 -11 -11 6 32 -18 18 -9 28 1 -23
26 25 3 4 5 32 7 18 9 28 11 12
№2
begin
var a:=ArrRandom(21,-42,56); a.Println;
foreach var i in Range(0,20,2) do a[i]+=5;
a.Println
end.
Пример
21 3 31 -11 17 47 41 22 9 31 -33 -37 -37 43 1 34 -35 -14 -28 56 -13
26 3 36 -11 22 47 46 22 14 31 -28 -37 -32 43 6 34 -30 -14 -23 56 -8
1.всего пикселей 128*128= 2^14(2 в 14-ой степени)
так как 32 цвет, то один символ кодируется 5 битами (log2(32), если бы было 33 цвета то уже бы потребовалось 6 бит, так как 5 бы не хватило).
Нам нужно в килобайтах значит нужно разделить на 2^13 (т.к. в 1 кбайте 2^13 бит)
(2^14*5)/2^13=10 кбайт
2) (64*128*7)/2^13=(2^13*7)/2^13=7 кбайт
3)(64*256*8)/2^13= 2^17/2^13=2^4=16 кбайт
4)(32*1024*7)/2^13=(2^15*7)/2^13=4*7=28 кбайт
5)(1024*512*6)/2^13=(2^19*6)/2^13=64*6=384 кбайт
6)(512*256*5)/2^13=(2^17*5)/2^13=16*5=80 кбайт
7)(512*128*4)/2^13=2^18/2^13=2^5=32 кбайт
8)(256*128*3)/2^13=(2^15*3)/2^13=4*3=12 кбайт
9)(128*128*8)/2^13=2^17/2^13=2^4=16 кбайт
10)(24*2^13)/(128*256)=2^16*6/2^15=2*3=6 бит, значит 64 цвета
11)(10*2^13)/(128*128)=2^14*5/2^14=5 бит, значит 32 цвета
12)(7*2^13)/(64*128)=(7*2^13)/2^13=7 бит, значит 128 цветов
13)(16*2^13)/(64*256)=2^17/2^14=2^3=8 бит, значит 256 цветов
14)(28*2^13)/(32*1024)=7*2^15/2^15=7 бит, значит 128 цветов
15)(384*2^13)/(1024*512)=(3*2^20)/2^19=3*2=6 бит, значит 64 цвета
16)(80*2^13)/(512*256)=(5*2^17)/2^17=5 бит, значит 32 цвета
17)(32*2^13)/(512*128)=2^18/2^16=2^2=4 бита, значит 16 цветов
18)(12*2^13)/(256*128)=(3*2^15)/2^15=3 бита, значит 9 цветов
19)(16*2^13)/(128*128)=2^17/2^14=2^3=8 бит, значит 256 цветов (Каждый раз возводим в квадрат кол-во бит)