Задачка про треугольники |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задачка про треугольники |
gulldan |
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
Всем привет
Перейду непосредственно к задаче: Нужно при заданных значениях сторон треугольника определить его вид сложность у меня возника при определение прямоугольного треугольника ,немогу понять как определить что он прямоугольный (зная только что стороны должны быть кратны 3 ,4 ,5 соответственно) помогите пожалуйста |
мисс_граффити |
Сообщение
#2
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
почему они должны быть кратны 3,4,5?
Длина стороны - обязательно целое число, что ли? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
gulldan |
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
вроде треугольники со сторонами кратными 3.4.5 то он прямоугольный я неособо много знаю я еще ученик 11 класса,но если Вы правы тогда тем более незнаю..
Сообщение отредактировано: gulldan - |
Айра |
Сообщение
#4
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Ну, по идее, в прямоугольном треугольнике квадрат гипотенузы равен сумме квадратов катетов, т.е. если у тебя строго выполняется это равенство, значит треугольник прямоугольный))
|
мисс_граффити |
Сообщение
#5
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
неужели до 11 класса еще не проходили теорему Пифагора?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
gulldan |
Сообщение
#6
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
точно xD
забыл про нее... спс |
Neznaika |
Сообщение
#7
|
Пионер Группа: Пользователи Сообщений: 51 Пол: Мужской Репутация: 0 |
Извиняюсь, но если подкоренное выражение в формуле Герона, используемое для вычисления площади треугольника по трём его сторонам, меньше или равно нулю, то эти самые три стороны треугольник не образуют.
И дальнейшие проверки бесполезны. |
Айра |
Сообщение
#8
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Цитата но если подкоренное выражение в формуле Герона ... то эти самые три стороны треугольник не образуют Да, как-то про такую ситуацию и не сказали.. По-моему, можно пойти еще проще: "в треугольнике любая сторона меньше суммы двух других сторон", если это условие не выполняется, то нет и треугольника)) Сообщение отредактировано: Айра - |
Lapp |
Сообщение
#9
|
|||
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
По-моему, можно пойти еще проще: "в треугольнике любая сторона меньше суммы двух других сторон", если это условие не выполняется, то нет и треугольника)) Верно, только я бы на всякий случай подчеркнул тут слово "любая". Выполнение этого условия для одной или двух сторон недостаточна для существования треугольника, то есть проверять нужно все три: TriangCanBeBuild := (a+b>=c) and (b+c>=a) and (c+a>=b);. Дополнительная информация, если интересует, здесь: Можно ли построить треугольник . Еще можно сказать, остроугольный треугольник или тупоугольный, все по той же теореме Пифагора. Берем наибольшую сторону и сравниваем ее с суммой квадратов остальных.
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
|||
Neznaika |
Сообщение
#10
|
Пионер Группа: Пользователи Сообщений: 51 Пол: Мужской Репутация: 0 |
Наверно задача все же имеет отношение к программированию.
Но сначала математика. Теорема 1. В любом треугольнике против большего угла лежит большая сторона. ----------------------------------------------------------------------------------- По значению самого большого угла можно определить вид треугольника. По условию заданы стороны треугольника, следовательно нужно нужно найти максимальную из трех сторон(вот тут можно применить программирование - лучше всего создать массив из трёх элементов - сторон треугольника - и отсортировать его по убыванию, тогда первый элемент массива - большая сторона). Теорема 2. Теорема косинусов или обобщённая теорема Пифагора. c*c = a*a + b*b - 2*a*b*cosC, где С - угол напротив стороны c. ---------------------------------------------------------------------------------- Про косинус известно, что он больше нуля для [0:pi/2), равен нулю при pi/2, и меньше нуля для (pi/2,pi]. Следовательно, нужно узнать знак 2*a*b*cosC= a*a + b*b - c*c (так как выражение 2*a*b > 0, то оно не помешает для вычисления знака косинуса, т.е. делить на него не нужно). Иногда для обозначения знака используют функцию Sign(X), которая равна -1, 0 и 1 для отрицательных, нулевого и положительных значений X соответственно. Тогда получим: case Sign(a*a + b*b - c*c) of -1 : Угол > pi/2 0 : Угол = pi/2 1 : Угол < pi/2 end. Если например стророны треугольника объявить как массив Line = array[1..3] of LongInt то после его сортировки по убыванию можно записать следующие операторы (тип переменной X - LongInt):
=========================================================== Поправка. Весь массив сортировать не нужно, нужно только выделить в нём максимальный элемент, то есть достаточно одного прохода:
Теперь можно сконструировать целую программу и поместить в архив... Правда для не очень больших целых чисел можно решить эту задачу в уме. Сообщение отредактировано: Neznaika - |
Айра |
Сообщение
#11
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Цитата Верно, только я бы на всякий случай подчеркнул тут слово "любая". Ага. Там должно быть "каждая", ошибочка вышла Цитата Еще можно сказать, остроугольный треугольник или тупоугольный, все по той же теореме Пифагора. Берем наибольшую сторону и сравниваем ее с суммой квадратов остальных. Т.е. если с^2>a^2+b^2, то треугольник тупоугольный, если меньше, то остроугольный?.. |
Lapp |
Сообщение
#12
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Т.е. если с^2>a^2+b^2, то треугольник тупоугольный, если меньше, то остроугольный?.. Да. Neznaika, кажется, раскрыл это еще более подробно - хотя, точно это утверждать не могу, так как не нашел в себе сил дочитать его пост. Неясно, зачем столько теории для такой простой задачки.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lapp |
Сообщение
#13
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Все же нашел в себе силы прочитать пост Незнайки..
Возможно, это оффтоп, но я все же выскажу свое мнение, которое одновременно и админское, и пользовательское. 2 Neznaika: Мне нравится твоя эрудиция. Я давно ищу возможность повысить тебе репутацию, но.. не могу. Скажи, почему большинство твоих постов совершенно не по делу? На Форуме (по крайней, мере на этом) не принято повторять то, что уже сказано выше в теме (а особенно, без ссылки на автора). Также, не принято сильно выходить за рамки темы (без необходимости). Твой пост - сплошная математика, теория, хотя я указал, что это не приветствуется в разделе Задачи. Далее - что нового он привнес по сравнению последним предложением в моем посте?.. Ничего. Я читаю твои ответы, читаю замечания Волво к ним. И в большинстве случаев Волво прав.. Будь так добр - умерь свой пыл, отвечай только по делу и только то, что еще не сказали до тебя. И тогда все будет хорошо. Еще раз: я симпатизирую тебе. Но я буду понижать тебе репутацию, если будешь продолжать отвечать не по делу. Спасибо за внимание. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Текстовая версия | 26.04.2024 0:38 |