Форум программистов, компьютерный форум CyberForum.ru

Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару - C++

Восстановить пароль Регистрация
 
SW.VOL
0 / 0 / 0
Регистрация: 16.01.2012
Сообщений: 5
21.01.2012, 08:03     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару #1
Даны действительные числа x1,....x15, y1,....y15, которые рассматриваются как координаты 15 точек на плоскости. Верно ли, что для каждой из этих пятнадцати точек найдется другая, такая, что все оставшиеся тринадцать точек лежат по одну сторону от прямой, проходящей через эти две точки.


сдесь есть такой же код но, но он на Форум Java SE (J2SE)---

Исключить из текста последовательности символов, заключенные в фигурные скобки

 Комментарий модератора 
Именуйте темы осмысленно!

 Комментарий модератора 
Дублирование тем наказуемо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2012, 08:03     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару
Посмотрите здесь:

Найти наименьшее расстояние от точки В до любой из точек множества А C++
Определить, лежат ли точки на одной прямой C++
C++ Определить номер точки, через которую проходит окружность с центром в начале координат, внутрь которой попадают все оставшиеся точки.
Написать программу, определяющую радиус и центр окружности, проходящей по крайней мере через три различные точки заданного множества точек C++
C++ Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
 Аватар для Байт
13974 / 8805 / 1227
Регистрация: 24.12.2010
Сообщений: 15,949
21.01.2012, 14:16     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару #2
Скорее всего, неверно. Одну точку поместите в центр круга, а остальные равномерно разместите на окружности.
SW.VOL
0 / 0 / 0
Регистрация: 16.01.2012
Сообщений: 5
21.01.2012, 15:00  [ТС]     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару #3
Байт, и что это даст?

Добавлено через 28 минут
училка обьяснила,не чего я не понял(( думаю делаеться так:
1) ввод n
2) ввод х(n), y(n)
fl=0;
3)цикл(от i=0 до n-1)
цикл(от j=j=1 до n)
{
s1=0; s2=0;
цикл( от k!=i до n)
if(k!=0 и k!=j)
if(y[j]==y[i] && y[k]>y[i]) s1++ ; else
if(y[j]==y[i] && y[k]<y[i]) s2++ ; else
if(x[j]==x[i] && x[k]>x[i]) s1++ ; else
if(x[j]==x[i] && x[k]<x[i]) s2++ ; else
if((y[k]-u[i])/(y[j]-y[i])<(x[k]-x[i]/(x[j]-x[i]) s1++; elser s2++;
if(s1==0 || s2==0)
{ fl=1; печ "да" ; i=n;i=n;k=n;}
}
4) if( fl=0) печ "нет"
Байт
 Аватар для Байт
13974 / 8805 / 1227
Регистрация: 24.12.2010
Сообщений: 15,949
21.01.2012, 15:40     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару #4
Цитата Сообщение от SW.VOL Посмотреть сообщение
Байт, и что это даст?
Я, видимо неправильно понял задачу. Нужно проверить это для конкретной конфигурации, а не доказать в общем случае.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
for(i=0; i<15; i++) {
 for(j=0; j<15; j++) {
   if (i==j) continue;
   A = y[j] - y[i];
   B = x[i] - x[j];
   C = -x[i]*(y[j] - y[i]) + y[i]*(x[j] - x[i]); // Это коэфициэнты уравнения прямой
   for (k=m=0;  k<15; k++) {
     if (k==i || k==j) continue;
     if (m==0) { z = A*x[k]+B*y[k]+C;  m =1; }
     else if ((A*x[k]+B*y[k]+C)*z < 0) break;  // Точки лежат по разную сторону
   }
    if (k<15) continue;  // Эта прямая не подошла
    break;
 }
  if (j==15) break;
}
 if (i==15) printf("Yes\n");
 else        prin\ntf("No");
Вот как-то так. Не проверял.
SW.VOL
0 / 0 / 0
Регистрация: 16.01.2012
Сообщений: 5
21.01.2012, 16:05  [ТС]     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару #5
Байт, напиши полностью код программы, что то я вообще запутался.... зарание спасибо
Yandex
Объявления
21.01.2012, 16:05     Верно ли, что для любой пары точек из множества все оставшиеся точки лежат по одну сторону от прямой, проведённой через эту пару
Ответ Создать тему
Опции темы

Текущее время: 11:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru