Символы кириллицы выводит некорректно. Как сделать чтобы выводился читабельный текст на русском языке? Тип приложения - не Qt, Qt Creator 4.5.0 основан на Qt 5.10.0. Win7.
|
Операторы управления
Задача 3.2. Даны вещественные числа и
. Определить, принадлежит ли точка с координатами (
) заштрихованной области (рис. 3.12).
Как показано на рис. 3.12, область ограничена линиями и
. Значит точка с координатами (
) будет принадлежать этой области, если будут выполняться следующие условия:
и
. Иначе точка лежит за пределами области.
Блок-схема, описывающая алгоритм решения данной задачи, представлена на рис. 3.13.
Текст программы к задаче 3.2:
#include <iostream> using namespace std; int main ( ) { float X,Y; cout<<" X = "; cin >>X; cout<<" Y = "; cin >>Y; if (X>=-1 && X<=3 && Y>=-2 && Y<=4) cout <<"Точка принадлежит области"<< endl; else cout<<"Точка не принадлежит области"<<endl; return 0; }
Задача 3.3. Даны вещественные числа и
. Определить, принадлежит ли точка с координатами (
) заштрихованной области (рис. 3.14).
Составим уравнения линий, ограничивающих заданные области. В общем виде уравнение прямой, проходящей через точки с координатами () и (
), имеет вид:
![\frac{x-x_1}{x_2-x_1}=\frac{y-y_1}{y_2-y_1}](/sites/default/files/tex_cache/c12477cdfdc018efb1fc22307619afbb.png)
Треугольник в первой координатной области ограничен линиями, проходящими через точки:
- (0, 1) - (4, 3);
- (4, 3) - (5, 1);
- (5, 1) - (0, 1).
Следовательно, уравнение первой линии:
![\frac{x-0}{4-0}=\frac{y-1}{3-1}\Rightarrow \frac{x}{4}=\frac{y-1}{2}\Rightarrow y=1+\frac{1}{2}\cdot x,](/sites/default/files/tex_cache/c52d28174b72edc7dd1c2f63f9547392.png)
уравнение второй линии:
![\frac{x-4}{5-4}=\frac{y-3}{1-3}\Rightarrow x-4=\frac{y-3}{-2}\Rightarrow -2\cdot x+8=y-3\Rightarrow y=-2\cdot x+11](/sites/default/files/tex_cache/7b16a2a6d7e9ea86c49cc36a9bb7ee74.png)
и уравнение третьей линии: .
Линии, которые формируют треугольник во второй координатной области, проходят через точки:
- (0, 1) - (-4, 3);
- (-4, 3) - (-5, 1);
- (-5, 1) - (0, 1);
Следовательно, уравнение первой линии:
![\frac{x-0}{-4-0}=\frac{y-1}{3-1}\Rightarrow \frac{x}{-4}=\frac{y-1}{2}\Rightarrow y=1-\frac{1}{2}\cdot x,](/sites/default/files/tex_cache/5b4f216cb4870896753265d4a7137d49.png)
уравнение второй линии:
![\frac{x+4}{-5+4}=\frac{y-3}{1-3}\Rightarrow \frac{x+4}{-1}=\frac{y-3}{-2}\Rightarrow -2\cdot x-8=-y+3\Rightarrowy=2\cdot x+11](/sites/default/files/tex_cache/4f5f1a1ee228dee2e4ad467df05d0c41.png)
и уравнение третьей линии: .
Таким образом, условие попадания точки в заштрихованную часть плоскости имеет вид:
![\begin{equation}\left\{\begin{array}{c}y\leqslant 1+\frac{1}{2}\cdot x\\y\leqslant -2\cdot x+11\\y\geqslant 1\end{array}\right. \text{или}\ \ \left\{\begin{array}{c}y\leqslant 1-\frac{1}{2}\cdot x\\y\leqslant 2\cdot x+11\\y\geqslant 1\end{array}\right. \end{equation}](/sites/default/files/tex_cache/039807ce4c98f1b07116e37aa1aedc50.png)
Далее приведён текст программы для решения задачи 3.3.
#include <iostream> using namespace std; int main ( ) { float X,Y; cout<<" X = "; cin >>X; cout<<" Y = "; cin >>Y; if ( (Y<=1+( float ) 1/2 *X && Y<=-2*X+11 && Y>=1) | | (Y<=1-( float ) 1/2 *X && Y<=2*X+11 && Y>=1)) cout <<"Точка принадлежит области"<< endl; else cout<<"Точка не принадлежит области"<< endl; return 0; }