четверг, ноября 12, 2009

Быстрое умножение...

Помню в школе нас научили умножать двузначные числа на 11. Для этого сказали необходимо левое и правое число оставить такими же, а между ними поставить их сумму (ну и если сумма больше 10, то соответственно первое число надо увеличить). Например, 23 умножим на 11:
получаем число, на первой позиции которого стоит 2, на третьей (последней) позиции 3, а между ними 2+3=5 - стоит 5. Итого 23 * 11 = 253.
Но оказалось, что нам не всё рассказали...
Оказывается таким образом можно умножать на 11 не только двузначные числа, а вполне и болеезначные. Сегодня наткнулся на интересное видео тут, вспомнил школу и дополнил свои навыки расширенной версией умножения на 11.
Смысл в следующем: при умножении числа на 11 первая и последняя цифры остаются такими же и на тех же позициях, а цифры между ними получаются из суммы числа на этой позиции и числа в предыдущей позиции. Рассмотрим на примере умножения 4216 на 11:
 - сразу можно написать следующий ответ 4_ _ _6,
 - во второй позиции будет 2+4=6, получаем 46_ _6,
 - вычисляем третью позицию: 1+2=2, получаем 463_6,
 - вычисляем четвертую позицию: 6+1=7, в итоге имеем 46376, достаем калькулятор и проверяем
4216 * 11 = 46376, что и требовалось доказать ;)
Берём числа покрупнее и, не боясь, умножаем их на 11:
3434859 * 11 = 37783449 (не забываем увеличивать число в предыдущем разряде при превышении суммой 10).

Однако и это еще не всё. Возьмем например умножение на 12. Если написать в виде формулы, то получим приблизительно следующее:
 - возьмем, например, пятизначное число abcde, умножим его на 12.
 - первая позиция остаётся, т.е a
 - вторая позиция получается путём суммы числа во второй позиции с удвоенным значением в первой позиции, т.е. b+2*a
 - в третьей позиции соответсвенно число, равное c+2*b
 - в четвертой d+2*c
 - в пятой e+2*d
 - в шестой позиции будет просто 2*e.
Проверяем: 35839 * 12 = 430068.

Если пойти дальше, то можно понять, что при умножении на 13 необходимо не удваивать предыдущее число, а утраивать и т.д.

Комментариев нет: