Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
годвилль
-8 / 1 / 0
Регистрация: 05.12.2017
Сообщений: 107
1

Определить лежат ли точки А и В по одну сторону от прямой

07.01.2019, 08:10. Просмотров 920. Ответов 4
Метки нет (Все метки)

Даны четыре вещественных числа x, y, x1, y1, представляющие собой координаты точек
А и В. Плоскость разделяется надвое прямой x = y. Написать программу ,
определяющую лежат ли точки А и В по одну сторону от прямой и выводящую
соответствующее сообщение.

Мне кажется, здесь что то неправильно. График X=Y это линия четко по диагонали, типа икс 1- игрек 1- икс 2, игрек 2, и так наоборот, икс -1, игрек -2.. Что то не так, как сделать правильно?
Еще ответ выдается странно- несколько ответов сразу, а надо один на точку А, и один на точку Б.

Вопрос таков- что я сделал неправильно, и неправильно ли это?


C++
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <vcl.h>
#include <iostream.h>
#include <conio.h>
 
#pragma hdrstop
 
#pragma argsused
 
int main(int argc, char* argv[])
{
float x=0,y=0,x1,y1,Y=0,X=0,Y1=0,X1=0;
int i=0;
 
cout<<"vvedite koordinati tochki A: "<<endl;
cout<<"Snachala X:= "<<endl;
cin>>x;
cout<<"Teper Y:= "<<endl;
cin>>y;
cout<<"Vvedite koordinati tochki B: "<<endl;
cout<<"Snachala X:= "<<endl;
cin>>x1;
cout<<"Teper Y:= "<<endl;
cin>>y1;
 
if (x>1 && y>1)
{
cout<<" tochka A Lezhit za pryamoi"<<endl;
}
if ((x=1) && (y=1))
{
cout<<"Tochka A lezhit rovno na pryamoi "<<endl;
}
else
{
cout<<"Tochka A lezhit pered pryamoi"<<endl;
}
if (x1>1 && y1>1)
{
cout<<"tochka B Lezhit za pryamoi"<<endl;
}
if ((x1=1) && (y1=1))
{
cout<<"Tochka B lezhit rovno na pryamoi "<<endl;
}
else
{
cout<<"Tochka B lezhit pered pryamoi"<<endl;
}
getch();
return 0;
}
0
Изображения
 
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2019, 08:10
Ответы с готовыми решениями:

Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару
Даны действительные числа x1,....x15, y1,....y15, которые рассматриваются как координаты 15 точек...

Определить лежат ли точки на заданной прямой
Заданы точки А(a1,a2) и В(b1,b2). Определить, лежат ли они на прямой y=ax+b. Запрещено создавать...

Определить, лежат ли точки на одной прямой
ВСЕМ ПРИВЕТ!!!!!!!!ПОМОГИТЕ КТО-НИБУДЬ СПРАВИТЬСЯ С ЗАДАЧЕЙ НА С++.рЕШИТЕ ПОЖАЛУЙСТА ВОТ УСЛОВИЕ-...

Определить лежат ли три точки на одной прямой
Добро времени суток уважаемые программисты.Суть такова.Нужно,чтобы я вводил координаты,а программа...

Три точки заданы координатами. Определить, лежат ли они на одной прямой
Задачи довольно простые. Я проста не разбираюсь в этом языке программирование. Проста срочно нужны...

4
AndreiLit
13 / 10 / 5
Регистрация: 04.10.2014
Сообщений: 48
Завершенные тесты: 1
07.01.2019, 10:30 2
Лучший ответ Сообщение было отмечено годвилль как решение

Решение

Ну во первых логический оператор равно в с++ пишется так == , из за этого у тебя два раза для одной точки выводится ответ.
Во вторых ты рассматриваешь только 1 случай расположения точек - относительно точки (1;1), а судя по задаче, тебе нужно математически высчитать будет ли данная точка выше прямой или ниже, при любом значении x и y.
Есть идея что тебе нужно сравнивать сумму координат введённой точки X1 с суммой координат вертикальной проекции этой точки на прямую X=Y, то есть например ввели точку Х1 (4;2) вертикальная проекция данной точки на прямую X=Y будет иметь координаты X1'(4;4), сумма координат X1<X1' (6<8) следовательно она размещается ниже прямой X=Y
1
Yetty
1819 / 1305 / 937
Регистрация: 18.12.2017
Сообщений: 4,429
07.01.2019, 16:21 3
годвилль, задача очень простая, но исходя из Вашего кода Вы совсем не разобрались в условии.

требуется определить находятся ли обе точки по одну сторону от прямой y=x (обе точки под прямой или обе точки над прямой) ИЛИ точки по разные стороны от прямой (одна точка над прямой другая точка под прямой) ИЛИ имеют место граничные случаи (одна точка на прямой другая точка вне прямой или две точки на прямой).

Рассматривайте такие точки: A(x1,y1) и B(x2,y2). Условие расположения например точки A под прямой: y1<x1. Используйте тип double, инициализировать нулём не нужно. Напишите, что получилось.
1
годвилль
-8 / 1 / 0
Регистрация: 05.12.2017
Сообщений: 107
08.01.2019, 18:55  [ТС] 4
Цитата Сообщение от Yetty Посмотреть сообщение
Рассматривайте такие точки: A(x1,y1) и B(x2,y2). Условие расположения например точки A под прямой: y1<x1. Используйте тип double, инициализировать нулём не нужно. Напишите, что получилось.
что то я так ничего и не понял
0
Yetty
1819 / 1305 / 937
Регистрация: 18.12.2017
Сообщений: 4,429
08.01.2019, 19:13 5
Цитата Сообщение от годвилль Посмотреть сообщение
что то я так ничего и не понял
вроде всё подробно изложил. любая прямая, в том числе прямая y=x делит плоскость на две полуплоскости. Вам нужно определить, в какой полуплоскости находятся точки (в одной или разных). как это сделать я Вам выше сообщил. напишите, что получилось.

Добавлено через 9 минут
если всё же непонятно, сделайте сначала более простую задачу для одной точки A(x1,y1): напишите код, который определяет, находится ли точка A(x1,y1) выше прямой y=x ИЛИ ниже прямой y=x ИЛИ на прямой y=x
1
08.01.2019, 19:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2019, 19:13

Определить, лежат ли три точки A, B, C на одной прямой. Если нет, найти угол ABC
Даны три точки A(x_1, y_1), \, B(x_2, y_2), \, C(x_3, y_3) Определить будут ли они...

Проверить лежат ли точки на одной прямой
Как перестроить программу что бы пользователь не смог ввести одинаковые точки #include &lt;stdio.h&gt;...

Определите, лежат ли точки на одной прямой
1)Заданы три точки на плоскости: М с координатами(x1,y1), L с координатами(x2,y2), и H с...


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

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

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