Геометрия.

и задачки для интервью.
ora-07445
Уже с Приветом
Posts: 223
Joined: 01 Feb 2007 21:01
Location: DC area

Геометрия.

Post by ora-07445 »

Понадобилось тут посчитать немного, будучи в прошлом (достаточно давнем, увы) математиком, думал что "ща я быстренько". Через час сдался :) К счастью, для прикладного применения особой точности не нужно, потому я просто нарисовал в масштабе и получил нужные цифры измерениями, но заноза осталась.. Насколько сильно я отупел, на ваш взгляд, посмотрите картинку (эта картинка - не в масштабе):

Image

Черным цветом - начальное состояние, серым - конечное. Точки A и B - шарниры. Известные размеры - красным цветом. Все сегменты (отрезки) конструкции - жесткие. Сегмент DC поворачивается вокруг точки B, два сегмента, DC и AB поворачиваются вокруг точки A так, чтобы точка D1 оказалась на "старой" прямой DC и угол C1D1C - 15 градусов. Нужно найти координаты точки C1 относительно чего нибудь начального, например точки C. Вроде данных достаточно. Как считаем? Другое описание поворота, на случай если не понятно - DC поворачивается вокруг B на 15 градусов против часовой, и далее перемещается параллельно себе, так чтобы D1 оказалась на "старой" прямой DC и расстояние AB1 сохранилось равным AB.
DropAndDrag
Уже с Приветом
Posts: 6208
Joined: 11 Mar 2011 05:36

Re: Геометрия.

Post by DropAndDrag »

скорее всего это термех, а не геометрия
я бы написал функцию положения точки В от положения точки Д на прямой или от угла. тут придется помароковать.
положение точки С находится очень просто от положений В и Д.
Сентябрь
Уже с Приветом
Posts: 758
Joined: 03 Feb 2011 20:58

Re: Геометрия.

Post by Сентябрь »

Перемещение точки С по вертикали считается элементарно: DC*sin15 = 62 * 0.259 = 16.05.

С горизонталью сложнее. Перемещение точки B по вертикали 20*0.259=5.176
Ралиус AB в квадрате равен (42+8)**2 + 70**2 = 7400 а значит координата точки B1 по горизонтали = sqrt(7400 -(70+5.176)**2) = 41.816.
Координата точки C1 по горизонтали = 41.816 - 42*cos15 = 1.247

Значит перемещение точки С по горизонтали 8 - 1.247 = 6.753
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

Самая простая задача.В равносторонний треугольник вписать три окружности касающихся друг друга и сторон треугольника.
Конечно только при помощи циркуля и линейки
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

Самая простая задача.В равносторонний треугольник вписать три окружности касающихся друг друга и сторон треугольника.
Конечно только при помощи циркуля и линейки
ora-07445
Уже с Приветом
Posts: 223
Joined: 01 Feb 2007 21:01
Location: DC area

Re: Геометрия.

Post by ora-07445 »

Сентябрь wrote:Перемещение точки С по вертикали считается элементарно: DC*sin15 = 62 * 0.259 = 16.05.
Давно не заглядывал, извините что опозданием - да, вроде все правильно, спасибо.
User avatar
Dweller
Уже с Приветом
Posts: 12258
Joined: 20 Dec 2000 10:01
Location: Bellevue, WA

Re: Геометрия.

Post by Dweller »

Борис Гин wrote:Самая простая задача.В равносторонний треугольник вписать три окружности касающихся друг друга и сторон треугольника.
Конечно только при помощи циркуля и линейки
Ну тут все просто. Если считать что делить отрезки и углы пополам мы умеем легко, то все что нужно это провести перпендикуляры P через середину каждой стороны, провести биссектрисы B из каждого угла треугольника и из каждого прямого угла С образованного перпендикулярами Р. Тогда центры окружностей будут на пересечении B и С.
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

В принципе задача решена правильно.Попробуем немного усложнить задачу.Нужно вписать три окружности в равнобедренный
треугольник.Желаю удачи
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

Предлагаю слегка изменить условие задачи ,заданной пользователем ora-07455 от 02 января 2016 г.Порядок работы выполним в
два этапа: 1.Сегмент ДС вращается вокруг точки В против часовой стрелки на 15 градусов.
2.Сегмент АВ вращается вокруг точки А так,чтобы точка Д1 оказалась на "старой" прямой ДС.Сегмент д1с1 вокруг
точки В1 не вращается и поэтому уголСД1С1 не будет равен 15 градусов..
Задание остается старым:найти координаты точки С1 относительно точки С
Сентябрь
Уже с Приветом
Posts: 758
Joined: 03 Feb 2011 20:58

Re: Геометрия.

Post by Сентябрь »

После первого этапа точка D будет иметь координаты: по горизонтали 8+42+20*cos15=69.3185, по вертикали 70-20*sin15=64.8236
Таким образом расстояние от точки А до этой новой D будет sqrt(69.3185**2+64.8236**2)= 94.906,
угол же между AD и вертикалью будет arctg (69.3185/64.8236)=46.9192 градуса

После второго этапа угол между AD и вертикалью будет arcos(70/94.906)=42.4750 градусов. Т.е. второй этап - это поворот всей конструкции на 46.9192-42.4750 = 4.4445 градусов по часовой стрелке.

И таким образом угол C1D1C будет равен 15-4.4445 = 10.5555 градусов.

Теперь решение свелось к предыдущей задаче с другим углом :-)
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

Все правильно,логично.молодец.Помню с детства задачу на построение.Построить четырехугольник по четырем сторонам,зная
что одна из диагоналей делит угол пополам.
User avatar
Dweller
Уже с Приветом
Posts: 12258
Joined: 20 Dec 2000 10:01
Location: Bellevue, WA

Re: Геометрия.

Post by Dweller »

Борис Гин wrote:В принципе задача решена правильно.Попробуем немного усложнить задачу.Нужно вписать три окружности в равнобедренный
треугольник.Желаю удачи
ну это тоже несложно, придумал в уме :) Пусть равные углы будут А, другой угол В
2 окружности в равных углах А вписываются тем же методом: сначала биссектрисы, потом делим основание треугольника на 2 части, делаем прямые углы с помощью перпендикуляра через середину, делаем биссектрисы в прямых углах, потом 2 окружности на пересечении этих биссектрис

Третий треугольник делается тоже просто - проводятся касательные к (дальним) окружностям из углов А. Это можно сделать удвоением угла между центром окружности и основанием.
И потом вписать окружность в образованный четырехугольник (там опять биссектрисы углов)
Борис Гин
Уже с Приветом
Posts: 113
Joined: 03 Dec 2012 01:35
Location: Московская обл.Люберцы

Re: Геометрия.

Post by Борис Гин »

Dweller вы молодец!Придумать такое решение,да еще в уме.Это здорово.Особенно решение с третьим треугольником.
User avatar
Dweller
Уже с Приветом
Posts: 12258
Joined: 20 Dec 2000 10:01
Location: Bellevue, WA

Re: Геометрия.

Post by Dweller »

Борис Гин wrote:Dweller вы молодец!Придумать такое решение,да еще в уме.Это здорово.Особенно решение с третьим треугольником.
Мое решение кстати неправильное (скорее приблизительное из разряда quick & dirty), т.к. 3я окружность впишется но не обязательно будет касаться двух других :(
Для правильного решения нужна бумажка, и время. Там будет несколько связанных друг с другом шагов, в уме уже трудно отследить.
Надо будет построить точку на высоте треугольника, равноудаленую от 2х окружностей и сторон треугольника. Можно пойти от обратного, т.е. взять любую точку на высоте и построить как бы новую сторону треугольника параллельно имеющейся, так чтобы была равноудаленность. Параллельность позволит сохранить угол, который надо будет использовать чтобы найти центр 3й окружности. Грубо говоря, надо будет ужать (гомотетия) всю новую конструкцию так чтобы "новая сторона" легла обратно на имеющуюся, тогда и угол перенесется в правильное место и его можно будет использовать.

Return to “Головоломки”