29 сент. 2011 г.

Вспоминаем тригонометрию

Почти все задачи, которые мы решаем в течение жизни, не являются настоящими. В каком смысле? Сейчас поясню.

Редкому человеку даётся шанс ответить на новый вопрос, от которого зависит дальнейшее развитие, например, человечества. Во-первых, необходимо справиться с огромным количеством учебных задач, чтобы подняться на уровень настоящих проблем. Это только в американских фильмах главный герой может «усилием воли» справиться с проблемой, о которой раньше никогда не думал. В реальной же жизни всё куда скучнее — необходимо очень долго и целенаправленно работать, чтобы продвинуться в изучении имеющих смысл, но ранее не исследованных постановок. Во-вторых должно очень повезти с задачей (окружающая среда должна натолкнуть на подходящую проблему), так как ответы далеко не на все вопросы а) возможны, б) нужны.

Вот какой, например, смысл, имеет задачка про получение натуральных чисел из трёх двоек? Да никакой пользы для народного хозяйства от такой задачки быть не может! А зачем она тогда нужна? Естественно, исключительно в учебных целях:
- сначала она работает как автобусные билетики (развитие быстрого счёта, памяти и так далее),
- потом кроме «тупой перебиралки» может подключиться мозг — вспомнив функции одного аргумента, найдёт способ получать произвольное количество натуральных чисел,
- далее можно уже решить исследовательскую задачу — попробовать получить все возможные натуральные числа (а потом можно попробовать ещё усилить задачу, что мы и сделаем в последнем абзаце этой заметки).

Если в этот момент в школе проходят логарифмы, то, наверное, будет найдено именно решение с парой логарифмов. И это будет полезно (надо же решать что-то кроме типовых простых задач из учебника, а тут как раз интересная конструкция собирается).

Если же в этот момент изучают тригонометрию, то тоже есть куда развернуться. В хороших школах учитель добивается не банального решения ограниченного набора типовых задачек, а понимания темы. Например, осваивая тригонометрию, не надо заучивать правила sin(-x)=-sin(x), не надо запоминать cos(0)=1 и так далее. А надо всего лишь разобраться с соответствием углов точкам единичной окружности, а тригонометрических функций точкам нескольких прямых. Если с этим разобраться, то все те «сложные для запоминания правила» станут простыми и естественными (и как будто сами «запомнятся»).

Но давайте на секундочку отойдём от игр с единичной окружностью, есть же ещё прямоугольный треугольник. В самом деле, слово тригонометрия образовано от двух греческих слов trigōnon «треугольник» + metron «измерять». В хороших школах кроме игр с единичной окружностью ещё обязательно играют с прямоугольным треугольником. Полезным бывает анализ функций arcsin(sin(x)), cos(arccos(x)), ctg(arctg(x)), cos(arctg(x)) и так далее. А для него стоит вспомнить определения тригонометрических функций острых углов: синусом/косинусом угла a называется отношение противолежащего/прилежащего катета к гипотенузе (в любом прямоугольном треугольнике, один из углов которого равен a).

Прямоугольный треугольникКак, например, понять, как устроена функция sin(arctg(x))? Достаточно знать всего две вещи: теорему Пифагора и определение тригонометрических функций через отношение сторон в прямоугольном треугольнике. Давайте рассмотрим треугольник со сторонами 1, sqrt(n), sqrt(n+1). Синус верхнего угла в нём равен 1/sqrt(n+1), а тангенс того же угла равен 1/sqrt(n). Соответственно, sin(arctg(1/sqrt(n))=1/sqrt(n+1). Получается, что этой парой функций можно наезжать на 1/sqrt(n) сколько угодно раз, как бы увеличивая n под корнем — sin(arctg(sin(arctg(1/sqrt(n))))=1/sqrt(n+2) и т.д.

Что нам это даёт? Для задачки с тремя двойками нам как раз нужно было научиться увеличивать натуральное число на единицу произвольное число раз. Тут мы получили не совсем тот результат, но у нас ещё и не все двойки потрачены :)

В качестве n мы можем взять 2/2, тогда у нас останется одна двойка, чтобы получить x из 1/sqrt(x).

Так как 0 и 1 мы получать умеем ((2-2)*2 и (2/2)^2, например), то давайте разберёмся со всеми остальными натуральными числами:
2 = sin(arctg(2/2))^-2,
3 = sin(arctg(sin(arctg(2/2))))^-2,
4 = sin(arctg(sin(arctg(sin(arctg(2/2))))))^-2,
и так далее.

Опять же, этот результат совершенно не имеет значения для народного хозяйства. Но при освоении тригонометрии научиться оперировать такими «крокодилами» очень даже полезно. Хотите ещё полезнее? Тогда давайте откажемся от двух двоек — оставим только одну. Итак, задачка Московской математической олимпиады 2010 года за 10 класс: Можно ли, применяя к числу 2 функции sin, cos, tg, ctg, arcsin, arccos, arctg, arcctg в любом количестве и в любом порядке, получить число 2010? (спасибо автору, вовремя показавшему ссылку на эту задачу). На странице 28 документа с решениями приведён разбор. Как обычно, я рекомендую открывать его только после самостоятельного решения задачи.

Хорошего дня!

9 комментариев:

  1. Прочёл олимпиадные задачки, очень интересная задачка про 33 богатыря. Написал письмо, интересно будет посмотреть на Ваш анализ этой задачи.

    ОтветитьУдалить
  2. Oleksandr Yefremov, Вы реализовали поиск нужных скоростей недостаточно мощным инструментом (с существенным ограничением на размер натуральных чисел), из-за чего и не смогли найти все 33 скорости. Если воспользоваться любой библиотекой длинной арифметики (например, GMP), то проблем с этим не будет.

    ОтветитьУдалить
  3. Суть не в том, что 32 бита мало, просто "Почти все задачи, которые мы решаем в течение жизни, не являются настоящими".

    Начали с богатырей едущих верхом, а закончили скоростями для записи коких нужно милионы знаков. Притом что первые две скорости в лучшем случии отличаються всего на 1, а скорости первых 32 "быстрых" богатырей на многие тысячи порядков выше скорости 33-тьего.

    И ета "философская" задача для школьника 8-мого класса.

    ОтветитьУдалить
  4. Анонимный01.10.2011, 06:18

    А расскажите, что это за философская задачка, для которой GMP нужен?

    ОтветитьУдалить
  5. Oleksandr Yefremov, ну да, в этом смысле задачка совершенно искусственная. Но полезная.

    Уважаемый аноним, речь о задачке о 33 богатырях для 8 класса из документа по ссылке из заметки (http://olympiads.mccme.ru/mmo/2010/solutions.pdf). GMP для её решения не нужен, так как требуется доказать, что существует набор чисел, а не предъявить его. Но подумать о предъявлении набора, конечно, очень интересно, так как это не элементарное действие.

    ОтветитьУдалить
  6. >На странице 28 документа с решениями приведён разбор

    Какой очень полезный документ скрывается за этой ссылкой.
    Илья, а еще подобные ссылки есть?;)

    ОтветитьУдалить
  7. Оксана05.10.2011, 13:31

    Илья, спасибо за очень интересную и полезную книжечку, которая скрывается за последней ссылкой :)

    ОтветитьУдалить
  8. Анонимный07.10.2011, 01:20

    А вот и ещё одна угарная ссылка: http://olympiads.mccme.ru/mmo/2009/solutions.pdf :-)

    ОтветитьУдалить
  9. Ну да, аноним показал хороший способ получать аналогичные документы за прошлые годы :)

    ОтветитьУдалить