Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> нахождение точек с целыми координатами в сегменте, Сегмент- объединение двух окружностей 
:(
    Опции темы
Hohhi
Дата 28.5.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 25.2.2006
Где: Молдова

Репутация: нет
Всего: нет



Привет всем! Я гтовлюсь к Молавскм экзаменам по информатике по школьному курсу. Вот решаю задачки потихоньку и дошёл до одной, пока идей нет. Вот условие:
рассмотрим круги с1и с2 определенные радиусами 1 и 2 соотвтетсвенно, а также декартоввыми координатами центров.Напишите программу, которая вычисляет, сколько точек с целочисленными координатами расположено внутри фигуры, образованный их пересечением
ВВод с клавы
Радиусы меньше 30, координаты от  50 до 100
вывод:количество
Помогите, если есть идея кидайте, листинг не обязателен
PM MAIL ICQ   Вверх
valedol
Дата 29.5.2007, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 13.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: нет



первое решение которое пришло в голову:
тупо пребрать все точки вложеным цилом и проверить входит ли эта точка в один круг, если да то вовторой?, если да то увеличиваем счетчик точек (провперять обычным уравнением окружности)
PM MAIL ICQ   Вверх
KuZyagroup
Дата 30.5.2007, 01:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


magento solution
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 16.4.2007
Где: Kiev

Репутация: нет
Всего: 4



1.Находим две точки пересечения (x1,y1; x2,y2)
2. Далее рассмотрим семейство горизонтальных прямых типа y=k(k-целое), каждая из них либо 
  а) пересекают первый круг в двух точках (k>max(y1,y2)) 
  б) пересекают оба круга (max(y1,y2)>k>mix(y1,y2))
  в) пересекают второй круг в двух точках (mix(y1,y2)>k)
3. Для каждой пары точек (xk1,yk1), (xk2,yk2) посчитаем сколько точек с целочисленными координатами расположено между ними по формулe 
Код

Потолок(min(xk1,xk2))-[max(xk1,xk2)]


Где Потолок от Х - найменьшее целое  которое не меньше X
А [x] - целая часть от X от Х - найбольшее целое не привышающее X
Пример
Код

Число Потолок Целая часть
1.6 | 2 | 1
1.3 | 2 | 1
2    | 2 | 2

Если в твоей задачи точки ледащие на линиях тоже в счет то используй строгие неравенства


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0416 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.