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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ekaterinaaa
0 / 0 / 0
Регистрация: 04.06.2013
Сообщений: 22
#1

Готовая рабочая программа на С ++ .Выберите три различные точки из заданного множества точек на плоскости , так чтобы была минемальная разность между - C++

05.06.2013, 08:35. Просмотров 273. Ответов 0
Метки нет (Все метки)

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


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// triangle Kate.cpp: определяет точку входа для консольного приложения.
 
#include "stdafx.h"
#include <stdio.h>      
#include <stdlib.h>     
#include <time.h>
#include <iostream>
#include <conio.h>
 
#define n 15
 
using namespace std;
 
struct kor
{
 int x;
 int y;
};
int area(kor a, kor b, kor c)
{
  return abs((a.x - c.x)*(b.y - c.y) + (b.x-c.x)*(c.y-a.y));
}
int area1(kor a, kor b, kor c,int &f)
{ 
  f= abs((a.x - c.x)*(b.y - c.y) + (b.x-c.x)*(c.y-a.y));
return 0; 
}
 
int main()
{
    
    setlocale(LC_ALL,"Russian");
  kor a[n];
  int i,j,k,r;
  int i1,j1,k1;
  int raz, razmin;
  int f,ms,ls,ps;
   srand (time(NULL));
  for (i = 0; i < n; i++)
  {
   a[i].x = rand()%10+1;
   a[i].y = rand()%10+1;
  }
  for (i = 0; i < n; i++)
  {
   cout<<a[i].x << " " << a[i].y<<'\n';
  }
 
  i1 = 0;
  j1 = 0;
  k1 = 0;
  raz = 0;
  razmin = n;
  int c = 0, c1 = 0;
  for (i = 0; i < n- 2; i++)
  for (j = i + 1;  j < n - 1; j++)
  for (k = j + 1;  k < n; k++)
  {
 
  for (r = 0;  r < n; r++)
  {
   if ((r!=i) &&( r!=j) && (r!=k))
 
   { 
       area1(a[i], a[j], a[k],f);
       area1(a[i], a[j], a[r],ms);
       area1(a[i], a[r], a[k],ls);
       area1(a[j], a[r], a[k],ps);
 
      if (f == ms + ls + ps)
           c++;
      else
          c1++;
   }
  }
  raz = c1-c;
  if (raz<0)  raz = raz--;
  if (raz < razmin)
  {
      razmin = raz;
      i1 = i;
      j1 = j;
      k1 = k;
  }
  };
 
  if (i1 >= 0)
  {
      cout<<"Образована точками:"<<"\n"<<"X:";
    cout<<a[i1].x<<" "<<a[j1].x<<" "<<a[k1].x<<"\n";
    cout<< "Y:";
     cout<<a[i1].y<<" "<<a[j1].y<<" "<<a[k1].y<<"\n";
     
     cout<< "Размерность: "<<razmin<<endl;
  }
  else
   cout<<"неприемлемое количество, либо неприемлемое расположение точек";
  return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2013, 08:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Готовая рабочая программа на С ++ .Выберите три различные точки из заданного множества точек на плоскости , так чтобы была минемальная разность между (C++):

Работа С Массивами (Выбрать три различные точки из заданного множества точек на плоскости так...) - C++
Задание: Выбрать три различные точки из заданного множества точек на плоскости так, чтобы была минимальной разность между количествами...

Из заданного на плоскости множества точек выбрать три различные точки - C++
Само задание звучит так: &quot;Из заданного на плоскости множества точек выбрать три различные точки так, чтобы разность между площадью...

Из заданного на плоскости множества точек выбрать три различные точки - C++
Здравствуйте, помогите пожалуйста написать программу: Из заданного на плоскости множества точек выбрать три различные точки так, чтобы...

Из заданного множества точек на плоскости выбрать две различные точки так - C++
Из заданного множества точек на плоскости выбрать две различные точки так, чтобы количество точек, лежащих по разные стороны от прямой,...

Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости - C++
Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на...

Из заданного множества точек на плоскости выбрать две различные точки - C++
Из заданного множества точек на плоскости выбрать две различные точки так, что бы количества точек, лежащих по разные стороны прямой,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2013, 08:35
Привет! Вот еще темы с ответами:

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

Из заданного множества точек на плоскости выбрать три разные точки A, B, C - C++
Из заданного множества точек на плоскости выбрать три разные точки A, B, C, так, чтобы внутри треугольника ABC содержалось максимальное...

Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра - C++
Задание, как множество точек вывести на экран понял. #include &lt;iostream&gt; #include &lt;time.h&gt; #define _CRT_SECURE_NO_DEPRECATE 0 using...

Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точук на плоскости - C++
Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точук на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru