IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Помогите с задачей, Помогиле решить несложную задачу
Avalon
сообщение 16.02.2008 11:27
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Миша

Репутация: -  0  +


Задача 1. Круговая площадь

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

Ограничения: во входных данных целые числа и по модулю не превосходят 1000.
Ввод из файла krug.in. В первой строке находятся шесть вещественных чисел через пробел - координаты центров и радиусы двух кругов: x1, y1, R1, x2, y2, R2.
Вывод на экран. Вывести одно вещественное число с одним знаком после запятой - площадь пересечения кругов.
Пример
Ввод
20 30 15 40 30 30
Вывод
608.4



Как я понимаю:
1. Определить непересекаемость: R1 + R2<= SQRT(SQR(X1-X2)+SQR(Y1-Y2)), тогда площадь=0
2. Определить вложенность R2 в R1:
SQRT(SQR(X1)+SQR(Y1)) + R1 >= SQRT(SQR(X2)+SQR(Y2)) + R2, тогда
S = Pi*sqr(R2)



P.S. Поиск юзал, ничего подобного не нашол

Сообщение отредактировано: Avalon - 16.02.2008 11:43


--------------------
Владение русской орфографией - это как владение кунг-фу: настоящие мастера не применяют его без необходимости... (с)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 16.02.2008 12:34
Сообщение #2


Гость






Вот тут посмотри: АлгоЛист - Перекрытие кругов , там приведен ход решения, останется только запрограммировать...
 К началу страницы 
+ Ответить 
Avalon
сообщение 16.02.2008 12:40
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Миша

Репутация: -  0  +


помогите запрограммировать пожалуйста !help.gif ypriamii.gif


--------------------
Владение русской орфографией - это как владение кунг-фу: настоящие мастера не применяют его без необходимости... (с)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 16.02.2008 12:49
Сообщение #4


Гость






Поможем... Ты начни хотя бы. А то мало того, что почти все правила нарушены, задача олимпиадная (и, кстати, конкурсная к тому же), так ты еще хочешь, чтобы за тебя ее решили, а ты только пошел и сдал?

P.S. И не надо писать

begin
end.
и говорить, что ты начал, а дальше у тебя не получается и тебе уже нужна помощь. Значит, иди и читай книгу о Паскале...

Сообщение отредактировано: volvo - 16.02.2008 12:49
 К началу страницы 
+ Ответить 
Michael_Rybak
сообщение 16.02.2008 12:57
Сообщение #5


Michael_Rybak
*****

Группа: Модераторы
Сообщений: 1 046
Пол: Мужской
Реальное имя: Michael_Rybak

Репутация: -  32  +


 ! 
Avalon, кнопку "жалоба" использовать можно только по назначению. Свою самооценку оставь при себе.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Avalon
сообщение 16.02.2008 13:25
Сообщение #6





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Миша

Репутация: -  0  +


вот моё начало, дальше я не понимаю
Код
program x3;
const Pi=3,14;
var
x1,x2,y1,y2,r1,r2,S:integer;
begin
readln (x1,y1,R1,x2,y2,R2);
{Assign(input, ‘krug.in’);
Reset (input);}  
if R1+R2<=SQRT(SQR(X1-X2)+SQR(Y1-Y2)) then
s:=0;
else
if SQRT(SQR(X1)+SQR(Y1))+R1>=SQRT(SQR(X2)+SQR(Y2))+R2 then S:=Pi*sqr(R2) else
begin



Сообщение отредактировано: Avalon - 16.02.2008 13:28


--------------------
Владение русской орфографией - это как владение кунг-фу: настоящие мастера не применяют его без необходимости... (с)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 11.08.2025 2:00
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"