Преобразование десятичного числа в двоичное — индукция

Я прочитал страницу 2 Mathematical Induction, у меня есть трудность понимания

Гипотеза индукции такова: «Если m — целое число, представленное двоичным массивом b[1,2 . . . k], то n = 2 ^ k * t + m”

1) Что такое m?

2) И для четного t m неизменяемо, а для нечетного t m=m+2^k, как?

Пожалуйста, объясните вышеперечисленные пункты. Спасибо


person Junaid    schedule 20.10.2016    source источник
comment
Принадлежит математическому сайту, так как это не вопрос программирования. Попробуйте mathoverflow.net   -  person K Scandrett    schedule 20.10.2016
comment
Точнее, это вопрос алгоритма. Так же и вопрос программирования.   -  person Junaid    schedule 20.10.2016
comment
Цитирование документа, на который вы ссылаетесь: если m - целое число, представленное двоичным кодом...   -  person Bob__    schedule 20.10.2016
comment
Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что он не связан с программированием.   -  person xenteros    schedule 20.10.2016


Ответы (1)


m — это целое число, представленное двоичным массивом на шаге k, возможно, это информация, которая недостаточно четко выделена.

Возьмем пример. Когда вы конвертируете n = 11 в двоичный код, окончательный результат будет 1011. После шага k = 2 вы преобразовали два младших значащих бита, поэтому текущий двоичный массив равен 11, что дает m = 3. Вы дважды разделили 11 на 2, так что t = 11/2/2 = 2. Очевидно, 2 ^ k * t + m = 2^2 * 2 + 3 = 11 = n. Это также объясняет ваш второй вопрос, потому что для нечетных t следующим битом в двоичном представлении будет 1, что увеличивает текущее двоичное представление на 2^k.

person Miljen Mikic    schedule 20.10.2016
comment
Спасибо за отличное объяснение. - person Junaid; 20.10.2016