Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2009, 19:09   #1
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию Отрезок

Возник вопрос:
Даны координаты конца и начала отрезка (целочиселные координаты) Нужно найти количество точек с целочиселными координатами, что лежат на отрезке:
Пример: 0 0 3 3
Ответ: 4.

Две точки как минимуи должны быть.

Спасибо всем.
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Старый 14.02.2009, 19:26   #2
Тупой
Форумчанин
 
Аватар для Тупой
 
Регистрация: 26.12.2008
Сообщений: 146
По умолчанию

Я бы сделал немного по тупому, а именно:
Отрезок задается координатами двух своих вершин A(xa,ya) и B(xb,yb).
Пусть для определенньости xa<xb и ya<yb.
Тогда, все точки, которые могут попасть в отрезок лежат в прямоугольнике левый нижний угол которого лежит в A, а правый верхний - в B.
Остальсо пройти по всем целым точкам этого прямоугольника и проверить, лажит ли точка на отрезке.
Вот как то так...

ПС: и чтото не понятно, на чем писать то надо?
"Hello, world!" - 17 errors 56 warnings
Тупой вне форума Ответить с цитированием
Старый 14.02.2009, 19:28   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,216
По умолчанию

Используя либо алгоритм Брезенхэма для построения отрезка, либо через sin и cos строим отрезок и считаем количество точек. Совсем не обязательно выводить точки отрезка на экран, только считаем их количество в процессе построения.
Arigato вне форума Ответить с цитированием
Старый 14.02.2009, 19:31   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Нужно перебрать точки с координатами x от x1 до x2 и y от y1 до y2, проверяя принадлежность отрезку.
Как проверить описано здесь -> http://algolist.manual.ru/maths/geom/belong/otr2d.php

ps опоздал немного..
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]

Последний раз редактировалось Sazary; 14.02.2009 в 19:36.
Sazary вне форума Ответить с цитированием
Старый 14.02.2009, 19:44   #5
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,216
По умолчанию

Цитата:
Нужно перебрать точки с координатами x от x1 до x2 и y от y1 до y2, проверяя принадлежность отрезку.
Это очень не оптимальное решение.
Arigato вне форума Ответить с цитированием
Старый 14.02.2009, 19:46   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Arigato
Это очень не оптимальное решение.
Согласен, но это первое, что пришло в голову )
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как отсортировать массив под данный отрезок и как минимум и максимум из него найти SIEGER Паскаль, Turbo Pascal, PascalABC.NET 1 20.11.2008 08:58
Помогите с формулами - треугольник, отрезок на плоскости DjDizzy Помощь студентам 5 01.10.2008 17:52