Как составить программу которая определяет принадлежит ли точка графику или нет

mrjc

ДАЮ 18 БАЛЛОВ
НАПИСАТЬ ПРОГРАММУ НА PYTHON!! (питон)

Составьте программу, которая определяет, принадлежит ли точка А(x0, y0) графику функции y=2x-3.​

Остались вопросы?

Новые вопросы по предмету Информатика

Студворк — интернет-сервис помощи студентам

Здравствуйте, Уважаемые форумчане.
Хочу спросить вас о помощи.
Нужно сделать программу, которая при вводе координат, определяла: Принадлежит ли эта точка графику или к пространству между графиком и системой координат.

Уравнение вот: Y=2x-4

График вот:

(Ссылка на сторонний ресурс удалена)

Определить, принадлежит ли точка графику

Вот что уже написал:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
X: Integer;
Y: Integer;
 
begin
WriteLn('VVOD COORDS OF POINT');
ReadLn(X,Y);
if (X>=0) and (X<=2) and (Y<=0) and (Y>=-4)
WriteLn('PRINADLEJIT!')
else
WriteLn('NEPRINADLEJIT!');
 
ReadLn;
end.

PS: Теперь нужно как-то исключить точки (2; -1), (2; -2), (2; -3), (2; -4), (1; -3), (1; -4) и т.п.
PPS: Т.е. не принадлежащие к графику и пространству между графиком и системой.

Всем привет! Дали такое задание:вычислить, принадлежат ли веденные координаты с клавиатуры данному графику.
Вот мой график:

введите сюда описание изображения

То есть точка с координатами (-2,1) принадлежит данному графику, а точка (0,5) не принадлежит, точка (1,1) так же не принадлежит.

У меня уже есть почти готовый код, но не получается задать такие условия, чтоб точки на отрезки [(-1,2),(3,2)] не принадлежали графику, как это сделать? То есть точка принадлежит графику, если она находится в закрашенной области.

Вот мой код:

#include <iostream>
using namespace std;
int main(){
    float x,y,k,z;
    bool bl;
    bl = true;
    int i;
    i=1;
    while(bl){
        cout << i<<")"<<"Enter x=";
        cin >> x;
        cout <<i<<")"<<"Enter y=";
        cin >> y;
        if(x>=-4 && x<=4 && y<=2 && y>=-1 && y<=(10+3*x)/2 && y<=11-3*x){
            if(y>=(2-2*x)/2 && y<-1+x){
                cout << "Наши точки: "<<"("<<x<<","<<y<<")"<<endl;
            }
        }
        else{
            cout << "Точки не принадлежат графику"<<endl;
        }
        i++;
    }

    return 0;
}

Написать программу,
определяющую — принадлежит ли точка с
заданными координатами (x,y) выделенной
области на графике (включая границы
области) (рис.11)

Рис.11. Область
выделения.

Данная область
ограничивается графиками двух функций
(четверть
окружности) и y = x — 6. Разобьем данную
область на две части: четверть окружности
и треугольник. Для того чтобы точка
принадлежала четверти окружности, ее
координаты должны удовлетворять
условиям:,36.
Для того чтобы точка принадлежала
треугольнику, должны выполнятся следующие
условия: x0,,.
Запишем первое условие принадлежности
точки части окружности в виде логического
выражения:

f1 = (x > =0) and (y >=
0) and (<=36).

Знак “
– знак логической операции конъюнкции
(“и”).

Переменная f1 примет
значение “True” (“истина”), если координаты
точки будут удовлетворять заданным
условиям.

Аналогичным образом
зададим логическую переменную f2:

f2 = (x >=
0) and(y<=0) and( y >= x – 6).

Для того чтобы
точка принадлежала рассматриваемой
области, ее координаты должны удовлетворять
либо первому условию, либо второму (т.е.
точка должна принадлежать либо четверти
окружности, либо треугольнику). Запишем
это условие с помощью логической
переменной f3:

f3 = f1 or f2.

2.1.4 Задание на использование условного оператора:

Написать подпрограмму,
которая выводит в первом случае в окно
сообщения, во втором – в ячейку листа
3 сообщение «Точка не принадлежит
заданному интервалу», если точка,
заданная координатами х,у не принадлежит
заштрихованной области, в противном
случае вывести сообщение «Точка
принадлежит заданному интервалу».

Варианты
задания:

1

6

2

7

3

8

4

9

5

10

3. Оператор выбора

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

Синтаксис
оператора выбора следующий:

Select
Case
«сравниваемое
Значение»

Case
«Значение

«блок
операторов 1»

Case
«значение 2»

«блок
операторов 2»

Case Else

«альтернативный
блок операторов»

End
Select

В
начале оператора расположены ключевые
слова select
case,
указывающие, что
следующий за с ними параметр «сравниваемое
значение» будет проверяться на несколько
значений. Далее следуют группы операторов,
начинающиеся с ключевого слова
Case.
Если параметр «сравниваемое_значение»
равен значению, указанному в
текущем операторе case,
то будут выполняться команды, расположенные
между этим
и следующим ключевым словом case.
После завершения выполнения этих команд
управление будет передано оператору,
следующему за ключевым словом End
Select.

3.1 Пример использования оператора выбора.

Создайте на листе3
следующую таблицу (рис.11):

Рис. 11 Вид таблицы
для примера использования оператора
выбора.

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

Наберите в редакторе
VBAтекст макроса
и выполните его.

Sub
калькулятор()

Dim x As
Double, y As Double, z As Double

Dim m As
Integer

m =
Worksheets(«лист3»).Cells(7,
3)

x =
InputBox(«введите
первое
число»)

y
= InputBox(«введите
второе число»)

Select Case
m

Case 1

z = x + y

Case 2

z = x — y

Case 3

z = x * y

Case 4

z = x / y

Case 5

z = x ^ y

Case Else

MsgBox
«вы забыли выбрать действие ,либо
номер действия указан неверно»

End Select

Worksheets(«лист3»).Cells(9,
3) = x

Worksheets(«лист3»).Cells(10,
3) = y

Worksheets(«лист3»).Cells(11,
3) = z

End Sub

Соседние файлы в папке Лабораторные по VBA

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Форум РадиоКот • Просмотр темы — VBA Принадлежит ли точка графику

Сообщения без ответов | Активные темы

Часовой пояс: UTC + 3 часа

Список форумов » Устройства » Интеграция с ПК

ПРЯМО СЕЙЧАС:

Начать новую тему Ответить на тему  Страница 1 из 1  [ Сообщений: 5 ] 
 

Для печати

Предыдущая тема | Следующая тема 

Автор Сообщение

Не в сети

Заголовок сообщения: VBA Принадлежит ли точка графику

СообщениеДобавлено: Чт ноя 04, 2010 10:01:36 

Электрический кот
Аватар пользователя

Зарегистрирован: Пн май 04, 2009 16:43:07
Сообщений: 1070
Откуда: Набережные Челны

Рейтинг сообщения: 0

Как можно отпределить непринадлежащие точки треугольной области внизу, например точки (0;-1) и (0;-2), остальные принадлежащие точки вроде нормально определяются?
Задание: определить принадлежит ли точка графику
Изображение
По графику я определил что он состоит из функций y=2-2x , y=2x+2, y=-x и y=x
Исходный код:

Код:

    If (2 — 2 * x <= 2) And (2 — 2 * x >= -2) And (y <= 2) And (y >= 0) Then
    Label4.Caption = «Точка принадлежит графику!»
    Else
        If (2 — 2 * x <= 2) And (2 — 2 * x >= -2) And (-x <= 0) And (-x >= -2) And (y <= 0) And (y >= -2) Then
        Label4.Caption = «Точка принадлежит графику!»
        End If

    End If

        If (2 + 2 * x <= 2) And (2 + 2 * x >= -2) And (y <= 2) And (y >= 0) Then
    Label4.Caption = «Точка принадлежит графику!»
    Else
        If (2 + 2 * x <= 2) And (2 + 2 * x >= -2) And (x <= 0) And (x >= -2) And (y <= 0) And (y >= -2) Then
        Label4.Caption = «Точка принадлежит графику!»
        End If

      End If

Последний раз редактировалось Hudgun Чт ноя 04, 2010 23:05:40, всего редактировалось 1 раз.

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

lix

Не в сети

Заголовок сообщения: Re: VBA Принадлежит ли точка графику

СообщениеДобавлено: Чт ноя 04, 2010 10:09:14 

Опытный кот

Карма: 5

Рейтинг сообщений: 0

Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

еще вариант. можно посчитать площади треугольников, образованных соединением этой точки с вершинами треугольника. если сумма площадей равна площади исходного, то точка внутри треугольника.
ну и еще по теме http://algolist.ru/maths/geom/belong/

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

Hudgun

Не в сети

Заголовок сообщения: Re: VBA Принадлежит ли точка графику

СообщениеДобавлено: Чт ноя 04, 2010 22:58:31 

Электрический кот
Аватар пользователя

Зарегистрирован: Пн май 04, 2009 16:43:07
Сообщений: 1070
Откуда: Набережные Челны

Рейтинг сообщения: 0

Сложно как-то лучи пускать и все такое :)

Я вот тут наткнулся на такое решение:

Цитата:

Составить программу, которая определяет принадлежность точки с координатами (x,y) заштрихованной области.
Изображение
Решение:

Код:

Dim x As Double, y As Double, d As Double
Private Sub Command1_Click()
        x = Text1.Text
        y = Text2.Text
    If (x > 0) And ((x * x + y * y) > 9) And ((x * x + y * y) < 25) Then
        MsgBox «Tochka_prinadlejit_dannomu_promejutku»
    Else
        MsgBox «Tochka_ne_prinadlejit_dannomu_promejutku»
    End If
End Sub

Объясните кто-нибудь, откуда вот эти условия взялись (x * x + y * y) > 9 и (x * x + y * y) < 25

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

PCBWay — всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати

lix

Не в сети

Заголовок сообщения: Re: VBA Принадлежит ли точка графику

СообщениеДобавлено: Пт ноя 05, 2010 09:11:19 

Опытный кот

Карма: 5

Рейтинг сообщений: 0

Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

Hudgun писал(а):

Объясните кто-нибудь, откуда вот эти условия взялись (x * x + y * y) > 9 и (x * x + y * y) < 25

уравнение окружности помните? x^2+y^2=R^2. ну вот, если подставить (x,y) в это уравнение, то возможно 3 случая — сумма квадратов меньше R^2 — точно лежит внутри окружности; равно — на окружности, больше — за пределами окружности. т.е. получается условие верно когда точка лежит за пределами окружности радиуса 3 и втутри окружности радиуса 5. такое возжможно только когда центры окружностей совпадают.

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

ИБП MEAN WELL серии DRC-180 на DIN-рейку – новое решение для пожарно-охранных систем

Компания MEAN WELL расширила семейство DRC-40/60/100 – недорогих ИБП (UPS) 2-в-1 (ИП и контроллер заряда/разряда АКБ в одном корпусе) с креплением на DIN-рейку. Теперь доступны модели мощностью 180 Вт новой серии DRC-180.
Источник питания DRC-180 предназначен для создания систем бесперебойного питания с внешней АКБ и может использоваться в охранно-пожарных системах, системах аварийной сигнализации, контроля доступа и в других приложениях, где требуется простая, недорогая и в то же время качественная система бесперебойного питания соответствующей мощности.

Подробнее>>

Hudgun

Не в сети

Заголовок сообщения: Re: VBA Принадлежит ли точка графику

СообщениеДобавлено: Пт ноя 05, 2010 10:34:31 

Электрический кот
Аватар пользователя

Зарегистрирован: Пн май 04, 2009 16:43:07
Сообщений: 1070
Откуда: Набережные Челны

Рейтинг сообщения: 0

Спасибо, по аналогии сделал:

Код:

If (y <= 2 — 2 * x) And (y >= -x) And (x >= 0) Then
Label4.Caption = «Точка принадлежит графику»
Else
    If (y <= 2 * x + 2) And (y >= x) And (x <= 0) Then
    Label4.Caption = «Точка принадлежит графику»
    End If
End If

Вроде работает :)))

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

Реклама

Выбираем источники питания MEAN WELL в открытом исполнении для промышленных устройств

В номенклатуре продукции MEAN WELL в Компэл можно легко найти требуемую модель стандартного источника питания практически для всех отраслей применения. Рассмотрим преимущества, эксплуатационные характеристики, схемотехнику и конструктивные решения трех наиболее характерных представителей класса источников питания в открытом исполнении семейств EPS, EPP и RPS, которые могут использоваться для индустриальных устройств.

Подробнее>>

Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  Страница 1 из 1  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа

Список форумов » Устройства » Интеграция с ПК

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:

Перейти:  

Понравилась статья? Поделить с друзьями:
  • Как найти код онлайн видео
  • Карта как найти драконов
  • Как найти прошивку для флешки
  • Кашель что это за ошибка как исправить
  • Need for speed rivals ошибка msvcp110 dll как исправить