|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.09.2017, 21:06 | #1 |
Новичок
Джуниор
Регистрация: 24.09.2017
Сообщений: 2
|
[Pascal] Задача о выяснении, существует три треугольник, заданный координатами своих вершин. Проблема со сравнением вещественных чисел. Код внутри.
Доброго времени суток! Необходимо сделать проверку на существование треугольника по координатам трех его вершин в декартовой системе. Сделал вычисление его сторон, далее хотел сделать основную проверку существования типа a+b<c, но т.к. вещественные числа нельзя сравнивать решил попробовать другой способ(в коде). Этот тоже отказывается работать с некоторыми координатами. Подскажите, пожалуйста, другой способ.
Код:
|
24.09.2017, 22:45 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
вещественные числа нельзя сравнивать на точное равенство.
а вот больше-меньше - вполне даже можно. попробуйте так: Код:
|
25.09.2017, 18:02 | #3 |
Новичок
Джуниор
Регистрация: 24.09.2017
Сообщений: 2
|
К примеру, (0;1),(2;3),(6;7). На плоскости точки находятся на одной линии, а программа говорит о существовании треугольника(скрин).
|
26.09.2017, 10:33 | #4 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
PascalABC.NET действительно так себя ведёт. предлагаю такой вариант: Код:
|
|
26.09.2017, 11:01 | #5 |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 734
|
- а это еще почему? Я вообще по C++ специалист, но по-моему в любом высокоуровневом языке можно сравнивать вещественные числа. Правда, надо еще погрешность учитывать и есть еще фокусы с вещественными числами. Но это уже отдельный вопрос.
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
|
26.09.2017, 11:21 | #6 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
сходите в эту тему (раздел С++) Оператор for, посмотрите пример неработающего кода. вот, например, образец неработающего кода на ideone - https://ideone.com/pS5aa4 Цитата:
это когда Вы в программке пишете float x=0.5; if (x==0.5) { <код> } - а <код> и не выполняется... Последний раз редактировалось Serge_Bliznykov; 26.09.2017 в 11:34. |
||
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
У трех четырехугольников, заданных координатами своих вершин в трехмерном пространстве определите площади | Nikproc | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 24.12.2016 17:51 |
Многоугольник на плоскости задан целочисленными координатами своих N вершин в декартовой системе координат | isst | Паскаль, Turbo Pascal, PascalABC.NET | 13 | 04.01.2015 18:58 |
Геометрическая задача - проверить, попадает ли начало координат (0,0) в заданный координатами вершин треугольник (FreePascal) | Ilai | Помощь студентам | 12 | 16.10.2014 09:25 |
Треугольник на плоскости задан координатами своих вершин.Найти координаты точки пересечения его медиан. | Silver23 | Помощь студентам | 2 | 13.01.2010 15:59 |