Структура программы

Давайте решим следующую задачу. На плоскости нарисовано кольцо с центром в точке (x0,y0). И радиусами границ r1<r2. Кроме того, на этой же плоскости дана точка с координатами (x, y).

Необходимо определить, принадлежит ли эта точка кольцу. Пусть вас не смущает "математическая окраска" задачи. Решение ее весьма тривиально: мы должны вычислить расстояние от центра кольца до точки, и сравнить его с радиусами. Если логическое выражение r1<L<r2 верно, то точка принадлежит кольцу. Если же хотя бы одно из этих условий не выполнено, то точка не принадлежит кольцу. Программа, реализующая это решение, приведена ниже:

// Точка и кольцо#include <iostream.h>#include <math.h> void main() { // Объявление переменных int x0, y0, r1, r2, x, y; float L; // Пусть пользователь введет данные cout<<"Input coordinates of circle’s center (X0, Y0): "; cin>>x0>>y0; cout<<"Input circle radiuses R1 and R2: "; cin>>r1>>r2; cout<<"Input point coordinates (X, Y): "; cin>>x>>y; L = sqrt(pow(x - x0, 2) + pow(y - y0, 2)); if ((r1 < L) && (L < r2 )) { cout<<"This point is situated inside the circle.\n"; } else { cout<<"This point is not situated inside the circle.\n"; }}

В этой программе появилось несколько новых элементов. Во-первых, это функция sqrt(), которая вычисляет квадратный корень и входит в состав библиотеки math.h.