Const n=10;
var a:array[1..10] of integer;
i,j,z:integer;
begin
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(100);
write(a[i]:4);
end;
writeln;
for i:=6 to 9 do
for j:=i+1 to 10 do
if a[i]<a[j] then
begin
z:=a[i];
a[i]:=a[j];
a[j]:=z;
end;
Write('Результат: ');
for i:=1 to 10 do
Write(a[i]:4);
end.
256=2⁸, следовательно символ занимает 8 бит = 1 байт
Длина строки 33·1 = 33 байта, страницы 28×33 = 924 байта, файла - 12×924 = 11088 байт = 11088/1024 ≈ 10.83 Кбайта
Var n : integer;
begin
readln (n);
if (n > -100) and (n < 100) then write ('Это число двузначное');
if (n > -1000) and (n < 1000) then write (Это число трёхзначное);
end.
V=M*N*b, где М и N -количество точек по горизонтали и вертикали соответственно, а b-битовая глубина цвета. В палитре 16 -цветов следовательно битовая глубина =4 т.к . Получаем V=800*600*4=1 920 000 бит =240 000 байт= 234,375 Килобайта или 240 Десятичных Килобайт(если считать что в килобайте 1000байт хотя на самом деле их 1024)
Это понимать так, как и написано: n XOR x, где x равно (n>>1) (число, которое получится, если побитово сдвинуть n вправо на 1).
Побитовый сдвиг это такая операция, при которой двоичная запись числа сдвигается на указанное количество бит вправо или влево, а пустые биты заполняются значением бита знака числа n (+ это 0, минус это 1).
Например переменная n размером 1 байт имеет значение 7, это выглядит как 00000111. Если выполнить операцию n>>1, то надо просто стереть (1) одну правую единицу, а слева дописать один ноль (ноль, потому что n положительное, если бы n было отрицательное, то дописывается 1). Получится 00000011=3, то есть 7>>1 = 3.
Таким образом (если n=7), исходная запись означала бы n^(n>>1) = 7 XOR (7>>1) = 7 XOR 3 = 00000111 XOR 00000011 = 00000100 = 4
Вроде так как-то.