Вбей в поисковик таблица истинности онлайн, с подробным решением выдаст
Той или иной ячейки
A1 A2 B5 и тд
Program gt;
var a:array[1..10]of integer;
i:integer;
begin
randomize;
for i:=1 to 10 do
begin
a[i]:=random(21)-65;
if(i mod 2=0)then write(a[i],' ');
end;
end.
, Первоначально (после первого цикла): A = 0 1 2 ... 10
Посмотрим, что делает второй цикл.
Заметим, что переменная k здесь бесполезна - ей присваивают какие-то значения, а потом ничего с ними не делают. Тогда про неё можно забыть. Остаётся только одна команда: A[i] = A[10-i]
Для i = 0, 1, 2, 3, 4 она просто заменяет A[i] на значение, симметричное относительно центра A[5]; A[0]=10, A[1]=9; A[2]=8; A[3]=7; A[4]=6.
С i=5 не происходит ничего: присвоение имеет вид A[5]=A[5]
Для последующих i опять A[i] меняется на симметричное. Но после i=4 массив и так "симметричен", так что все эти команды ничего не делают.
A = [10, 9, 8, 7, 6, 5, 6, 7, 8, 9, 10]
При использовании 16777213 цветов (2^24) для хранения цвета одного пикселя требуется log(2)2^24 = 24 бита = 3 байта.
Необходимые объемы видеопамяти:
1) 640*480*3 байт = 921 600 байт = 921 600 / 1024 Кбайт = 900 Кбайт
2) 800*600*3 байт = 800*600*3 / 1024 Кбайт = 1406,25 Кбайт
3) 1024*768*3 байт = 1024*768*3 / 1024 Кбайт = 2304 Кбайт
4) 1240*1024*3 байт = 1240*1024*3 / 1024 Кбайт = 3720 Кбайт