KM139. Параллелограмм

Задача из журнала «Квант» №4 1972 г.
Из вершины [latex]B[/latex] параллелограмма [latex]ABCD[/latex] проведены его высоты [latex]BK[/latex] и [latex]BH[/latex]. Выразите расстояние от точки [latex]B[/latex] до точки пересечения высот треугольника [latex]BKH[/latex] через длины отрезков [latex]KH = a[/latex] и [latex]BD = b[/latex].

km139

Входные данные:
Длины отрезков [latex]a[/latex], [latex]b[/latex]

Выходные данные:
Расстояние от точки [latex]B[/latex] до точки [latex]O[/latex] — точки пересечения высот треугольника [latex]BKH[/latex] ([latex]c[/latex])

Тесты:

b a c
10 6 8
5 3 4
3 5 inf (Infinity)

Код программы на С++:

Код программы на Java:

Решение задачи:

Рассмотрим параллелограмм [latex]ABCD[/latex]. Проведем высоты [latex]BH[/latex] и [latex]BK[/latex] соответственно к сторонам [latex]AD[/latex] и [latex]DC[/latex]. Соединив точки [latex]K[/latex] и [latex]H[/latex] линией, получаем треугольник [latex]BKH[/latex]. В нем проведем три высоты [latex]BD[/latex], [latex]HM[/latex], [latex]KE[/latex] к сторонам [latex]HK[/latex], [latex]BK[/latex], [latex]HB[/latex]. Точкой пересечения высот в треугольнике является точка [latex]O[/latex].
Проведем в параллелограмме высоту [latex]DL[/latex] к стороне [latex]BC[/latex]. Соединив точки [latex]L[/latex] и [latex]K[/latex] получаем треугольник [latex]LDK[/latex]. Если сдвинуть (параллельно) треугольник [latex]BHO[/latex] так, чтобы точка [latex]H[/latex] попала в точку [latex]D[/latex], то он полностью совпадет с треугольником [latex]LKD[/latex], поскольку отрезок [latex]HO[/latex] параллелен и равен [latex]DK[/latex], а отрезок [latex]BH[/latex] параллелен и равен [latex]LD[/latex]. Следовательно, [latex]BO=LK[/latex] и два треугольника равны.
Рассмотрим прямоугольный треугольник [latex]HKL[/latex], в котором сторона [latex]HK=a[/latex] и [latex]HL=b[/latex] по условию. По теореме Пифагора отыщем сторону KL: [latex]KL=\sqrt[]{b^{2}-a^{2}}[/latex].
Так как треугольник [latex]BOH[/latex] и треугольник [latex]LKD[/latex] равны, получаем что [latex]KL=BO[/latex]

Решение задачи на C++
Решение задачи на Java

Условие задачи можно найти здесь: http://www.kvant.info/zkm_tex/zkm_main.pdf

Related Images:

5 thoughts on “KM139. Параллелограмм

  1. — Не стоит описывать переменные за пределами функции main(). Это не мешает программе правильно работать, но для такого поведения должны быть существенные причины.
    — Добавьте ссылку на работу в ideone.com.
    — Что это за странный тест с отрицательными расстояниями? Разве такое возможно? Да и не будет программа правильно работать если, например, b = -1, a = -7. Кроме того, у Вас переменные для хранения a и b типа unsigned, т.е. целые неотрицательные. Чем закончится попытка ввода туда отрицательного числа мы уже обсуждали в лекции про «глобус целых чисел».
    — Где Вы вычитали, что расстояния a и b должны быть целыми?
    — В отличие от дефиса, тире с обоих сторон выделяют пробелами.
    — Не очень удачная мысль называть файлы с использованием символов кириллицы. А название «нудавай-1.svg» плохо отражает суть рисунка.
    — Пожалуйста, ответьте здесь на следующий вопрос — чем Вас не устроило решение Ф.А.Бартеньева, размещённое в №12 за 1972 год на стр.40?

    • Здравствуйте! Постаралась исправить все ваши замечания, так же немного изменила код картинки в формате svg. Решение Ф.А Бартеньева меня очень даже устроило, просто, увидев рисунок и простоту последней формулы, я не вдавалась в подробности написанного, а старалась записать то что поняла своими словами, дабы избежать излишнего копирования умных мыслей.

  2. — Вы молодец, что разобрались как вставлять красивые розовые кнопочки в статью. Конечно, этот навык Вам вряд ли понадобится, но умение разбираться с инструкциями и что-то делать на основании полученных знания очень ценно. Молодец. К сожалению, в данном конкретном случае розовые кнопочки лучше убрать и сделать обычные гиперссылки. Дело в том, что подбор цветов и визуальное оформление должно совпадать для всех страниц сайта. Т.е. необходимо единство стиля. Если кто-то прописывает на свое странице индивидуальные цвета, то сайт уже не выглядит как одно целое.
    — На кнопке для запуска Вашего кода на выполнение написано «Ideone». Думаете читатель догадается что это?

    • Я зачёл Вашу работу, но боюсь последнее моё замечание Вы перевыполнили. Давайте я конкретизирую свою просьбу. Сделайте, например, так:
      «Для выполнения программы можно воспользоваться кодом на IDEOne. Не обязательно дословно, должна работать основная идея — посетитель сайта видит осмысленный текст, а по клику работают переходы на URL видеть и запоминать который ему нет необходимости.
      Вторая ссылка должна выглядеть аналогично. Например, слов «здесь должно стать ссылкой на URL по которому размещается сканированная копия журнала. Только не того, где условие (оно у Вас уже приведено), а того, где и условие, и решение. Еще разумнее было бы просто сделать гиперссылкой указание на журнал Квант сделанное в первой строке Вашей публикации.

Добавить комментарий