while условие выполнения цикла do
begin
{Операторы}
end;
A, 36 (10) = 100100 (2)
B, 4 (10) = 000100 (2)
A + B = 101000 (2) = 40 (10)
A and B = 000100 (2) = 4 (10)
A xor B = 1000000 (2) = 32 (10)
----------
побитовые операции
x AND y равно 1 тогда и только тогда когда оба бита = 1
x XOR y равно 1 когда биты неравны, те 1 и 0, а когда биты равны результат = 0
256 * 5 * 64 = 81 920 бит = 10 240 байт = 10 килобайт
один символ = 5 бит
Рассмотрим фрагмент поблочно.
<span>FOR i=1 TO 10
A(i)=5+i
NEXT i
Здесь в цикле для i, меняющегося от 1 до 10, в массив А помещаются значения i+5, т.е. 6, 7, 8, .. 15.
</span><span>FOR i=1 TO 10
IF (A(i)+i >12) THEN
A(i)=A(i)+ i
ENDIF
NEXT i
В этом цикле i также меняется от 1 до 10. Для всех значений </span>элементов массива, которые в сумме со своим порядковым номером в массиве (индексом) превысят 12, значение элемента будет увеличено на этот номер.
a[1]+1=6+1=7. Это число меньше 12 и a[1] остается прежним. Так же, a[2]+2=9, a[3]+3=11 и они тоже не изменятся. Начиная с a]4]+4=13 значения будут изменяться на новые и в результате мы получим семь новых значений: 13, 15, 17,... 25. Все они будут нечетными. И еще одно нечетное значение (7) имеет a[2]. Итого, <em><u>нечетные значения будут иметь 8 элементов.</u></em>