murza2007
?>

Переведите число 147 из десятичной системы счисления в двоичную систему счисления.сколько нулей содержит полученное число? в ответе укажите одно число-количество значащих нулей.

Информатика

Ответы

KIRILLSHURYGIN98
1001001. Вот так. 4 нуля содержит число.
Переведите число 147 из десятичной системы счисления в двоичную систему счисления.сколько нулей соде
впвыпвып-Зуйков629
1. Вариант с последовательным приращением аргумента

var
  x:real;
begin
  x:=-1;
  while x<=2 do begin
    Writeln('x=',x:4:1,'   y=',1/x:0:10);
    x:=x+0.2
    end
end.

Решение
x=-1.0   y=-1.0000000000
x=-0.8   y=-1.2500000000
x=-0.6   y=-1.6666666667
x=-0.4   y=-2.5000000000
x=-0.2   y=-5.0000000000
x= 0.0   y=-18014398509482000.0000000000
x= 0.2   y=5.0000000000
x= 0.4   y=2.5000000000
x= 0.6   y=1.6666666667
x= 0.8   y=1.2500000000
x= 1.0   y=1.0000000000
x= 1.2   y=0.8333333333
x= 1.4   y=0.7142857143
x= 1.6   y=0.6250000000
x= 1.8   y=0.5555555556
x= 2.0   y=0.5000000000

2. Вариант с вычислением аргумента путем умножения

var
  x:real;
  i:integer;
begin
  for i:=1 to 16 do begin
    x:=0.2*(i-1)-1;
    Writeln('x=',x:4:1,'   y=',1/x:0:10)
    end
end.

Решение
x=-1.0   y=-1.0000000000
x=-0.8   y=-1.2500000000
x=-0.6   y=-1.6666666667
x=-0.4   y=-2.5000000000
x=-0.2   y=-5.0000000000
x= 0.0   y=Infinity
x= 0.2   y=5.0000000000
x= 0.4   y=2.5000000000
x= 0.6   y=1.6666666667
x= 0.8   y=1.2500000000
x= 1.0   y=1.0000000000
x= 1.2   y=0.8333333333
x= 1.4   y=0.7142857143
x= 1.6   y=0.6250000000
x= 1.8   y=0.5555555556
x= 2.0   y=0.5000000000

Анализ решений
При х=0 функция 1/х терпит разрыв. При подходе к нулю слева она стремится к минус бесконечности, а справа - к плюс бесконечности.
Первый вариант программы из-за суммирования на каждом шаге ошибок машинного округления пришел не к нулевому аргументу х, что привело к неточному вычислению значения функции (как видно по результату, аргумент не дошел до нуля слева). Во втором варианте аргумент вычислялся более точно, накопления суммы не было и при нуле мы получили именно "бесконечность".

Выводы
Табуляция функций по второму варианту предпочтительнее. Но её недостатком является необходимость предварительного вычисления количества повторений цикла по известной формуле Int((b-a)/h)+1 и подготовка формулы для расчета текущего значения переменной в виде функции от параметра цикла.
proplenkusale88
1) 537218687454,427878₉ ⇒Х₂₇
Обратим внимание, что 9=3², 27=3³. Это дает возможность произвести перевод, пользуясь троичной системой счисления, как промежуточной.
При записи в троичной системе счисления каждая девятиричная цифра кодируется двумя троичными, а двадцатисемиричная - тремя.
Составим табличку перехода от девятиричной системы к троичной
0⇒00, 1⇒01, 2⇒02, 3⇒10, 4⇒11, 5⇒12, 6⇒20, 7⇒21, 8⇒22.
И просто делаем подмену цифр.
537218687454,427878₉ =
12 10 21 02 01 22 20 22 21 11 12 11, 11 02 21 22 21 22 =
121021020122202221111211,110221222122₃ =
121 021 020 122 202 221 111 211,110 221 222 122₃
Перегруппировка нам понадобилась, чтобы четко выделить тройки разрядов для последующего перевода. Теперь нам нужна еще одна табличка - для перевода из троичной системы в двадцатисемиричную.
000⇒0, 001⇒1, 002⇒2, 010⇒3, 011⇒4, 012⇒5, 020⇒6, 021⇒7, 022⇒8,
100⇒9 101⇒A, 102⇒B, 110⇒C, 111⇒D, 112⇒E, 120⇒F, 121⇒G, 122⇒H,
200⇒I, 201⇒J, 202⇒K, 210⇒L, 211⇒M, 212⇒N, 220⇒O, 221⇒P, 222⇒Q

121 021 020 122 202 221 111 211,110 221 222 122₃ =
G 7 6 H K P D M, C P Q H₂₇ = G76HKPDM,CPQH₂₇

ответ: 537218687454,427878₉ = G76HKPDM,CPQH₂₇

2) С шестнадцатиричной и восьмеричной системами счисления все так же, но проще, потому что в школах учат двоичные коды чисел от 0 до 15.
16=2⁴, 8=2³. Мы переходим от шестнадцатиричной системы счисления к двоичной, заменяя каждую цифру четырьмя битами (тетрадой), а потом разбиваем результат на тройки (триады) и каждую триаду заменяем восьмеричной цифрой.
CFB5EE,D349C₁₆ =
1100 1111 1011 0101 1110 1110, 1101 0011 0100 1001 1100₂ =
110011111011010111101110,11010011010010011100₂ =
110 011 111 011 010 111 101 110,110 100 110 100 100 111 000₂ =
6 3 7 3 2 7 5 6, 6 4 6 4 4 7 0₈ =
63732756,646447₈

ответ: CFB5EE,D349C₁₆ = 63732756,646447₈

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Переведите число 147 из десятичной системы счисления в двоичную систему счисления.сколько нулей содержит полученное число? в ответе укажите одно число-количество значащих нулей.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

tabacoffee
strager338
ПетросовичЗаславский
koldunovan
mariia39
Карапетян
sashaleb88
vrn3314
Олег1105
kostmax1971
Александрович Василий
Yuliya Aleksandr282
koptevan6
dimon198808744
Виталий_Ильназ574