Program z13; Var a: array [1..1000] of integer; b: array [1..1000] of integer; i,j,n,k:integer;Begin write('Введите N = '); readln(n); for i:=1 to n do begin write('N[',i,'] = '); readln(b[i]); end; for i:=1 to n do write(b[i],' '); writeln; for i:=1 to n do a[i]:= b[i]; for i:=1 to n-1 do for j:=1 to n-1 do if (a[j] > a[j+1]) then swap(a[j],a[i+1]); k:=0; for i:=1 to n do if(a[i] = b[i]) then k:= k + 1; if (k = n) then writeln('Все элементы массива упорядочены по возрастанию') else writeln('Элементы не упорядочены');End.
Переводим в десятичную:
F7CB16 = 15∙163+7∙162+12∙161+11∙160 = 61440+1792+192+11 = 6343510
Потом это число переводим в двоичную:
63435/2=31717 (остаток 1)
31717/2=15858 (остаток 1)
15858/2=7929 (остаток 0)
7929/2=3964 (остаток 1)
3964/2=1982 (остаток 0 )
1982/2=991 (остаток 0)
991/2=495 (остаток 1)
495/2=247 (остаток 1)
247/2=123 (остаток 1)
123/2=61 (остаток 1)
61/2=30 (остаток 1)
30/2=15 (остаток 0)
15/2=7 (остаток 1)
7/2=3 (остаток 1)
3/2=1 (остаток 1)
Последний ответ 3/2=1 - эту единицу берём и наоборот собираем остатки.