Задача про умножение с нестандартным решением

Задача про умножение с нестандартным решением

Решаем двумя способами — как ребёнок и как программист

У этой задачи есть два решения — одно рассчитано на детей, второе — на взрослых суровых программистов. Какое сможете найти вы?

Сама задача выглядит так:

Задача про умножение с нестандартным решением

Надо найти, чему равны A и B.

Представим, что мы знаем только самое простое умножение, максимум — с двузначными числами. Начнём с самого первого действия умножения в столбик:

AB × A = 384

Так как AB — это A × 10 + B, то если разделить AB на 10, то получим число A,B. Получается, что A,B × A = 38,4 (потому что первую строку мы тоже делим на 10. 

А теперь следите за логикой. Это число — 38,4 — близко к квадрату числа A (A × A), и погрешность вносит только дробная часть. Представим, что её нет и посмотрим, квадрат какого числа максимально близко к 38,4:

5 × 5 = 25 → нет, слишком мало

6 × 6 = 36 → похоже на правду

7 × 7 = 49 → не, уже перебор

Получается, что число A — это 6. Зная это, подставим пока ноль вместо числа B и посмотрим, что получится:

60 × 6 = 360

Но у нас на второй строке стоит 384. Это значит, что B × 6 = 384 − 360 = 24. Получается, что B = 4.

Проверяем: 64 × 46 = 2944. Всё сходится, а значит, мы решили всё правильно.

Если мы будем решать эту задачу как программисты, то сразу заметим число 256 и вспомним, что 256 = 2 в восьмой степени. Это значит, что все его множители будут кратны двойке:

128 × 2

64 × 4

32 × 8

16 × 16

Число 256 получилось из умножения AB × B, то есть двузначного числа на однозначное. Из всех наших пар 128 × 2 не подходит, потому что 128 — трёхзначное число. И 16 × 16 тоже не подходит, потому что в этом случае мы умножаем не на однозначное, а на двузначное число.

Остаются пары 64 × 4 и 32 × 8. Но шаблону AB × B соответствует только пара 64 × 4, а значит, A = 6, а B = 4.

Для нетерпеливых есть решение, которое можно запустить и протестировать прямо в консоли: 

  1. Создаём цикл для переменной a, где мы перебираем значения a от 0 до 9.
  2. Внутри него такой же вложенный цикл для переменной b.
  3. Внутри этого вложенного цикла собираем два числа и перемножаем их. Чтобы собрать число ab, нужно a умножить на 10 и прибавить b. Аналогично для числа ba. Перемножаем их и сравниваем с искомым 2944.
  4. Если сравнение случилось, выводим результат в консоль

Итоговый код на JavaScript:

for (var a = 0; a <= 9; a++) {
	for (var b = 0; b <= 9; b++) {
		if ((a*10+b)*(b*10+a)==2944) {console.log(""+a+b+" * "+b+a+" = 2944")};
	}
}

Можете скопировать, вставить в консоль браузера и проверить. Результат будет таким:

46 * 64 = 2944
64 * 46 = 2944

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Соцсети:

Алина Грызлова

Любите математику? Это для вас
Попробуйте бесплатный тренажер «Основы математики для цифровых профессий». Это все необходимые знания, чтобы закрыть пробелы в математике для айтишника.
Попробовать бесплатно
Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас
Любите математику? Это для вас
Попробуйте бесплатный тренажер «Основы математики для цифровых профессий». Это все необходимые знания, чтобы закрыть пробелы в математике для айтишника.
Попробовать бесплатно
Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Два программиста и календарь
Два программиста и календарь

Как узнать количество дней в месяце только по его номеру?

hard
Задача про периметр и забывчивого монтажника
Задача про периметр и забывчивого монтажника

Сколько нужно кабеля?

easy
Задача про ниндзя и разведчика
Задача про ниндзя и разведчика

Победитель может быть только один.

medium
Простая задача о почти сорванном дедлайне

Как всё успеть в последний момент.

easy
Логическая задача
Задача имени Якубовича: три шкатулки с деньгами

Интуиция обманет вас в этой задаче. Попробуйте лучше теорию вероятностей, это легко.

hard
Задача про умножение с нестандартным решением
Задача про умножение с нестандартным решением

Решаем двумя способами — как ребёнок и как программист

easy
Задача про тимлида и его новую команду

В этой задаче врут почти все.

medium
Задача про тест на собеседовании
Задача про тест на собеседовании

Пришёл программист на собеседование, и началось.

medium
Где ошибка?

Эта задача рождена, чтобы ставить вас в тупик.

medium
Задача про мыло и проверку в школе
Мыло и проверка в школе

Справится завхоз с проверкой или нет?

easy
easy