Цитата(Alix @ 24.3.2008, 17:06) | ну разъясню что ли математику, прогу лень писать. Вот есть точка начала координат - (x0, y0). Может она у Вас будет (0, 0), но для общности не буду так делать. Надо выяснить расстояние от точки (x, y) до (x0, y0). Получаем: d = Sqrt(Sqr(x - x0) + Sqr(y - y0)); Sqrt - это корень квадратный, а Sqr - это возведение в квадрат. Соответственно все что осталось - проверить, чтобы (d >= r) and (d <= R). |
Ну что же, тогда я прогу напишу, пускай человек радуется!
Код | Program tochka; uses crt; var x0,y0,x,y,d,R,r:real; BEGIN clrscr; Writeln('Попадет ли точка в кольцо'); Wriite('Введите координаты точки: '); Read(x,y); x0:=0; y0:=0; R:={Здесь задать внешний радиус}; r:={Здесь задать внутренний радиус}; d = Sqrt(Sqr(x - x0) + Sqr(y - y0)); if (d>=r) and (d<=R) then begin Write('Заданная точка попадает в кольцо'); end else begin Write('Заданная точка не попадает в кольцо'); end; writeln; Write('Нажмите любую клавишу'); END.
|
Добавлено через 1 минуту и 19 секунд Должна работать вроде как правильно написал, просто Паскаль давно изучал.... писал соответственно без компилятора со смартфона!)) |