Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Найти расстояние от ближайшей точки треугольника до его стороны с функцией - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Приоритет побитовых операций http://www.cyberforum.ru/cpp-beginners/thread1304945.html
Всем привет. Столкнулся с непоняшкой: // Объявляем два массива и инициализируем их unsigned char A={0xFF, 0x03, 0x00, 0x00, 0xB6}; unsigned short B={0}; // Смотрим, что...
C++ Сортировка строк по возрастанию и убыванию длин слов Написал код, в котором принимаются две строки. Первая сортируется по возрастанию длин слов, вторая по убыванию. В результате нужно получить строку, в которой на нечётных местах слова первой строки,... http://www.cyberforum.ru/cpp-beginners/thread1304931.html
Перевод с десятичного в двоичный числа в прямой и обратный код C++
Перевод с десятичного в двоичный числа в прямой и обратный код.
C++ Ищу опытного программиста 3D игр для бесплатных консультаций
Ну суть отражена в заголовке.Мне не нужен чей-то фриланс,просто хочу найти умного человека,которому иногда можно будет задавать умные вопросы=)
C++ Модульное программирование и классы C++ (проблема слияния) http://www.cyberforum.ru/cpp-beginners/thread1304897.html
Добрый день! Есть задание сделать алгоритм нахождения минимального пути из точек. Задание кое как сделал в мейн.цпп, все работало прекрасно, но преподавателю нужно чтобы я его сделал в виде модулей....
C++ Даны кординаты вершин двоих треугольников. Определить, какой из них имеет большую площадь Даны кординаты вершин двоих треугольников. Определить, какой из них имеет большую площину. подробнее

Показать сообщение отдельно
понтуног
-156 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 118

Найти расстояние от ближайшей точки треугольника до его стороны с функцией - C++

19.11.2014, 14:01. Просмотров 195. Ответов 1
Метки (Все метки)

Нужна помощь с заданием. Условие:даны координаты вершин треугольника и точек внутри него.Найти расстояние от ближайшей точки треугольника до его стороны с помощью функции. Есть код на паскале, но никак не могу перевести в си. Помогите пожалуйста кому не сложно.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
uses crt;
const t = 0.001 ;{точность сравнения вычисленных вещественных чисел}
{функция определения площади треугольника по координатам вершин}
function plosh (x1 , y1 , x2 , y2 , x3 ,y3 : real) :real;
begin
plosh := abs (( x1 - x3 ) *( y2 - y3 ) - ( x2 - x3 )* ( y1 -y3 )) /2 ;
end ;
{функция проверки лежит ли точка в треугольнике}
function prin ( x1 , y1 ,x2 , y2 , x3 , y3 , tx, ty: real): boolean ;
begin
prin:= abs( plosh ( x1 , y1 , x2 , y2 ,x3 , y3 ) - plosh ( x1 , y1 ,x2 , y2 , tx, ty)
- plosh (x1 , y1 , tx, ty, x3 , y3 ) -plosh ( tx, ty, x2 , y2 ,x3 , y3 )) <t
end ;
{функция определения высоты}
function vys (x1 , y1 , x2 , y2 , tx, ty: real): real;
begin
vys := 2 * plosh ( x1 , y1 ,x2 , y2 , tx, ty) / sqrt(sqr ( x1 -x2 ) + sqr( y1 - y2 )) ;
end ;
var ax ,ay, bx, by, cx, cy,tx, ty, d : real;
begin
clrscr;
repeat
writeln ( 'Введите координаты вершин треугольника' ) ;
readln( ax, ay,bx, by, cx, cy) ;
if plosh (ax, ay, bx, by, cx,cy) <t then
writeln ( 'Треугольник вырожденный, повторите ввод' )
until plosh ( ax, ay, bx, by,cx, cy) >t;
repeat
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru