Форум программистов, компьютерный форум, киберфорум
Наши страницы
Prolog
Войти
Регистрация
Восстановить пароль
 
BlackYul
5 / 5 / 0
Регистрация: 26.11.2011
Сообщений: 18
1

Прямая и две точки.

22.12.2011, 21:18. Просмотров 722. Ответов 0
Метки нет (Все метки)

Заданы прямая ax+by+c=0 и 2 точки (x1,y1) и (х2,у2). определить их взаимное расположение:
1) точки по одну сторону от прямой;
2) точки по разные стороны от прямой;
3) одна на прямой, а другая нет;
4) обе точки на прямой.
Решение:
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Domains
 i=integer
 s=symbol
Predicates
 vvod(i,i,i,i,i,i,i) 
 pol(i,i,i,i,i,i,i,s)
 otvet
Clauses
 vvod(A,B,C,X,Y,M,N):- write("A,B,C,X,Y,M,N"),nl,
 readint(A),readint(B),readint(C),
 readint(X),readint(Y),readint(M),readint(N).
 
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C<0,A*M+B*N+C<0,Z="po odnu storonu".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C>0,A*M+B*N+C>0,Z="po odnu storonu".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C<0,A*M+B*N+C>0,Z="po raznye storonu".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C>0,A*M+B*N+C<0,Z="po raznye storonu".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C=0,A*M+B*N+C<>0,Z="odna na pryamoj, drugaya net".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C<>0,A*M+B*N+C=0,Z="odna na pryamoj, drugaya net".
 pol(A,B,C,X,Y,N,M,Z):- A*X+B*Y+C=0,A*M+B*N+C=0,Z="obe na pryamoj".
 
 otvet:-vvod(A,B,C,X,Y,M,N), pol(A,B,C,X,Y,N,M,Z),write(Z).
Goal
 otvet.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2011, 21:18
Ответы с готовыми решениями:

На плоскости даны прямая и две точки
Помогите решить задачки контрольной по оптимизации, эти две никак не...

Дана прямая MH и две точки A и B по разные стороны от неё
Не могу решить... Дана прямая MN и две точки A и B по разные стороны от неё....

Даны две точки и прямая. Необходимо найти на этой прямой такую точку
Даны две точки М1(х1,y1), М2(х2,y2) и прямая Ах+By+С=0. Необходимо найти на...

Найдите две точки, что проходящая через них прямая пересекается с максимальным количеством окружностей
Завтра должны сдать лабораторные, не осилил данную задачу. Даже представление...

Прямая l разбивает координатную плоскость на две полуплоскости. Выяснить, верно ли, что точки (a,b) и (c,d) принадлежат разным полуплоскостям.
Даны действительные числа a, b, c, d, s, t, u (s и t одновременно не равны...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2011, 21:18

Найти две такие различные точки из А, что проходящая через них прямая пересекается максимальным количеством окружностей
Надо составить прогу. На плоскости заданны множество точек А и множество...

Круг, множество точек, прямая проходящая через две точки и через центр круга
плиз хелп. Нужно вывести координаты двух точек. #include &lt;stdio.h&gt; #include...

Прямая от точки до точки TChartr
Подскажите, как соединить несколько точек в одной. Известна общая точка,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru