А
переведём в двоичную
АВС,1А_16=1010 1011 1100, 0001 1010_2
каждая цифра шестнадцати ручного представления становится четвёркой цифр в двоичном виде.
теперь для перевода в восьмисотых систему будем отсекать по три бита от запятой, влево, и это будет целая часть, и потом вправо, это станет дробной частью
=101 010 111 100, 000 110 100_2=
справа получились только два бита, и их надо дополнить нулём
=5274,064_8
б
из восьмеричной переведём в двоичную
123,56_8=001 010 011, 101 110_2
переформатирование двоичное число по 4 бита в группе, при необходимости дополняя слева и справа недостающими нулями
=0 0101 0011, 1011 1000_2=
и заменим каждую четвёрку соответствующей шестнадцати яичной цифрой
= 53,В8_16
Var s,i:integer;
begin
for i:=100 to 999 do
begin
if ((i mod 100 div 10)mod 2=0) and ((i mod 100 div 10)<>0)
then writeln (i);
s:=s+i;
end;
writeln (s,' сумма всех таких чисел');
end.
151 в двоичной системе (10010111) тем самым единиц равняется 5.
Тебе две программы или одну?
// Язык Pascal
Var i : integer;
Begin
for i:= 5 to 20 writeln(i);
for i:=45 to 60 writeln(i);
end.
Да, я серьезно, это будет работать. Это две задачи в одной. Поползут цифры в столбик, с 5 до 20, потом резко с 45 до 60, а потом программа закроется
231(10) = Е7(16) = 347(8) = 11100111(2)
777(10) = 309(16) = 1411(8) = 1100001001(2)