|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.06.2010, 22:01 | #1 |
Регистрация: 28.06.2010
Сообщений: 3
|
Найти число медиан множества точек
помогите сделать программу (или подсказать как ее делать). Не могу даже понять как к ней подойти.
Медианой множества, состоящего из четного числа точек плоскости, никакие три из которых не лежат на одной прямой, называется прямая, соединяющая две точки множества, с обеих сторон от которой лежит равное число точек. Даны действительные числа x1, y1, x2, y2, …, xn, yn (n – нечетное число). Найти число медиан множества точек с координатами (x1, y1),( x2, y2),…( xn, yn) в предположении, что никакие три точки этого множества не лежат на одной прямой. |
29.06.2010, 00:59 | #2 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
1) создаём массив из N точек
2) перебираем в цикле каждую пару и на них строим уравнения прямых (вернее находим лишь коэффициенты ур-ий) - всего будет k := (n * (n - 1)) div 2 ур-ий Код:
Проверяем каждую точку (естественно кроме 2-х точек i, j на которых основана прямая) на принадлежность определённой полуплоскости. Для этого подставляем каждую точку в выражение Ax+By+C. Точки принажлежащие одинаковым полуплоскостям будут иметь один и тот же знак (+ или -) В цикле Код:
Код:
|
29.06.2010, 10:54 | #3 |
Регистрация: 28.06.2010
Сообщений: 3
|
а мне надо чтоб ввод точек был вручную, где мне это прописать, а точнее даже какие переменные им присвоить?
а можешь ее написать полностью? а че такое Т? Последний раз редактировалось Stilet; 30.06.2010 в 10:05. |
29.06.2010, 12:50 | #4 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
1) Создаём массив точек
Код:
Код:
|
29.06.2010, 14:57 | #5 |
Регистрация: 28.06.2010
Сообщений: 3
|
а ты какой используешь паскаль? ато у меня просто tp7 не понимает некоторые функции, которые ты написал. он не знает че такое T: array of array[0..1] of integer;
и setlength(T, n); |
29.06.2010, 17:25 | #6 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
У меня Delphi, для паскаля используй либо динамические списки, либо статические массивы var T: array[0..99, 0..1] of integer; - тогда setlength не потребуется, максимальное кол-во точек = 100
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Треугольник на плоскости задан координатами своих вершин.Найти координаты точки пересечения его медиан. | Silver23 | Помощь студентам | 2 | 13.01.2010 15:59 |
определить радиус и центр окружности, на кот. лежит наиб.число точек заданного на плоскости мн-ва точек) | kcю | Помощь студентам | 0 | 17.11.2009 19:50 |
множества точек | kcю | Помощь студентам | 13 | 08.11.2009 11:48 |