Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Тоже интересует задача D Поместье. Скиньте или объясните, пожалуйста, хотя бы логику решения, либо формулу. Спасибо!
1
  1  Mikhael, 07 сентября 2012 г. 3:35:41
      Спасибо модератору Puporev с www.cyberforum.ru:

uses crt;
var x0,y0,x1,y1,r,c,b,u,s1,s2,s:real;
begin
clrscr;
writeln('Введите координаты центра круга:');
readln(x0,y0);
write('Радиус=');
readln(r);
repeat
writeln('Введите координаты точки вне круга:');
readln(x1,y1);
c:=sqrt(sqr(x1-x0)+sqr(y1-y0));{гипотенуза треугольника, образованного
центром, точкой и точкой касания}
if c<=r then write('Точка принадлежит кругу, повторите ввод');
until c>r;
b:=sqrt(c*c-r*r);{касательная=катет}
u:=arctan(r/b);{угол тругольника против радиуса}
s1:=c*b*sin(u);{площадь 4х-угольника}
u:=2*u+pi;{угол оставшегося сектора}
s2:=r*r*u/2;{его площадь}
s:=s1+s2;
write('Площадь фигуры=',s:0:6);
readln
end.
  2  Ишмаметьев Иван Анатольевич, 06 сентября 2012 г. 12:26:53
      Или не подскажите, где можно протестировать переписанную программу?
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru