Площадь по стороне и двум прилежащим углам, Задачка |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Площадь по стороне и двум прилежащим углам, Задачка |
Lykash |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Вычислить площадь S треугольника по одной стороне "а" и прилежащим к ней углам "альфа" и "бета", при этом углы можно задавать или в градусах или в радианах.
|
TarasBer |
Сообщение
#2
|
Злостный любитель Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Находишь третий угол.
Находишь синусы углов. Находишь длины сторон (исходя из того, что длина стороны пропорциональна синусу противолежащего угла). Находишь площадь по Герону. -------------------- |
Lapp |
Сообщение
#3
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Тарас, мне кажется можно чуть проще..
Опускаем высоту на a из противоположной вершины. Она делит a на две части, x и a-x. Находим x из условия x * tg(alpha) = (a-x) * tg(beta) Получаем x = a * tg(beta) / (tg(alpha)+tg(beta)) Теперь высота найдется как x*tg(alpha), а дальше площадь найти не проблема. Как и можно было ожидать, формула получается симметричная: S = a2 * tg(alpha) * tg(beta) / (tg(alpha)+tg(beta)) / 2 Надеюсь, в таких простых вычислениях негде было ошибиться даже и устно )) Остается скользкий вопрос.. Чертеж (в голове)) я делал только для острых углов alpha и beta (и, тем самым, положительного x), но мне кажется, что все будет работать и для тупых (одного тупого, ессно)). -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
TarasBer |
Сообщение
#4
|
Злостный любитель Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
> Тарас, мне кажется можно чуть проще..
Да, так намного проще, а я ведь ещё подумал - раз у меня в решении вылезает Герон, значит я что-то делаю через задницу... -------------------- |
Lykash |
Сообщение
#5
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
вот помогли нормально на другом форуме:
uses crt; Сообщение отредактировано: Lapp - |
Lapp |
Сообщение
#6
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
вот помогли нормально на другом форуме: Извини, братан, мы не просекли, что "помочь" значит на самом деле сделать за тебя.. В следующий раз хотя бы пиши, что именно хочешь (кроме условия). Ну, или хотя бы "пожалуйста", что ли.. И соблюдай правила (пп. 1 и 2 вверху страницы). Удачи тебе в поиске "помощников", неуч.. 2 TarasBer: А в коде еще более простой способ )).. хи-хи на наши с тобой седины.. ))) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
TarasBer |
Сообщение
#7
|
Злостный любитель Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
> вот помогли нормально на другом форуме
Да пошёл ты... > А в коде еще более простой способ Получается a*a*sin(alhpa)*sin(beta)/(sin(alpha+beta)) Если в твоей формуле с тангенсами домножить на косинусы, то как раз это и получится. Добавлено через 1 мин. Ага, нашёл: http://www.cyberforum.ru/turbo-pascal/thread446300.html -------------------- |
Текстовая версия | 23.12.2024 19:34 |