Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Пример 6. Для закрепления умения применять логические операции полезно научиться выполнять

Читайте также:
  1. CИТУАЦИОННЫЕ ЗАДАЧИ С ПРИМЕРАМИ РЕШЕНИЯ
  2. CИТУАЦИОННЫЕ ЗАДАЧИ С ПРИМЕРАМИ РЕШЕНИЯ
  3. CИТУАЦИОННЫЕ ЗАДАЧИ С ПРИМЕРАМИ РЕШЕНИЯ
  4. CИТУАЦИОННЫЕ ЗАДАЧИ С ПРИМЕРАМИ РЕШЕНИЯ
  5. VI. ПРИМЕРНАЯ МЕТОДИКА ОБУЧЕНИЯ УПРАЖНЕНИЯМ КУРСА СТРЕЛЬБ
  6. Августа 1792 г. Законодательное собрание во Франции отрешило короля Людовика XVI от власти и заключило его в тюрьму. Это пример проявления санкций
  7. Автомобили - идеальный пример эмпирического продукта

 

Для закрепления умения применять логические операции полезно научиться выполнять упражнения двух типов:

  1. Дана некоторая область плоскости. Записать логическое выражение, принимающее значение «истина» тогда и только тогда, когда точка с координатами (x, y) принадлежит указанной области.
  2. По заданному выражению нарисовать область плоскости, в которой и только которой указанное выражение истинно.

 

Такие задачи, в зависимости от того, какие логические операции используются при определении областей, можно классифицировать следующим образом:

· В выражении не используются логические операции. Например, точки первой и третьей четвертей, включая и оси координат, определяется с помощью выражения x*y >=0.

· Используется только операция &&, если область состоит из одной части. Например, точка внутри треугольника с вершинами (1, 1), (0, 0), (-1, 1) определяются так: y > abs(x) && y <=1.

· Используется только операция ||, если область состоит из нескольких относительно несложных частей, для определения каждой из которых достаточно одного неравенства. Например, область, состоящая из левой половины круга радиуса 2 с центром в начале координат, включая и полуокружность, и точек справа от оси OY определяется так: x > 0 || x*x + y*y <=4.

· Используются как операция &&, так и операция ||, если область «склеена» из нескольких частей. Каждая из них определяется с помощью нескольких неравенств, соединенных операцией &&. Например, ту же левую половину круга радиуса 2, включая и его границы, и правую относительно оси OY часть полукольца, образованного окружностями радиусов 2 и 3 с центром в начале координат, можно определить так:

x <= 0 && x*x + y*y <=4 || x >=0 && x*x + y*y >= 4 && x*x + y*y <=9.

· Используется операция отрицание (!), если легче определить область, которой точки не принадлежат, или некоторую часть уже определенной области надо «выбросить» из нее. Например, так легче определить круг радиуса 5 с центром в начале координат, из которого выброшен треугольник с вершинами (1,1) (0, 0) и (-1, 1):

x*x + y*y <= 25 &&! (y >= abs(x) && y <=1).

 

Область ограничена линиями y = -x, x=0, y=-1. Соответствующее выражение для ее записи: if (y <=x && x >=0 && y >-1) cout << ”YES”; else cout << ”NO”;

 

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

 

Область можно описать как круг, пересекающийся с треугольником. Точка может попадать либо в круг, либо в треугольник, либо в их общую часть:

 

{x2 + y2 <=1} или {х≤0 и y ≤ 0 и y ≥ -x-2}

 
 


-2 1

-1

-2

Программа:

#include <iostream>

#include <conio.h>

using namespace std;

int main()

{double x, y;

cout << " input x, y" << endl;

cin >> x >> y; // с помощью условного оператора

if ( (x*x +y*y <= 1)|| (x<=0 && y <=0 && y >= -x-2) )
cout << "YES" << endl;

else cout << "NO" << endl;

 

cin >> x >> y; // с помощью условной тернарной операции

cout <<

((( x*x +y*y <= 1 ) || ( x<=0 && y <=0 && y >= -x-2 ))? "Yes": "No" );

cout <<endl;

 

_getch();

return 0;

}


Дата добавления: 2015-07-08; просмотров: 154 | Нарушение авторских прав


Читайте в этой же книге: Результат вычисления выражения характеризуется значением и типом. Операции выполняются в соответствии с их приоритетами. | Классификация операций | Приоритеты (ранги) операций | Арифметические операции | Выделение цифр в целом числе | Операции присваивания | Примеры использования | Примеры преобразования типов | Адрес переменной | Программирование вычисления алгебраических выражений |
<== предыдущая страница | следующая страница ==>
Логические выражения и примеры их записи| Правила преобразования типов

mybiblioteka.su - 2015-2024 год. (0.009 сек.)