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

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

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

Из N треугольников, заданных координатами своих вершин, имеет больший периметр? - C++

21.12.2013, 01:51. Просмотров 303. Ответов 2
Метки нет (Все метки)

Из N треугольников, заданных координатами своих вершин, имеет больший периметр?
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2013, 01:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Из N треугольников, заданных координатами своих вершин, имеет больший периметр? (C++):

Какой из N треугольников, заданных координатами своих вершин, имеет больший периметр? - C++
какой из N треугольников, заданных координатами своих вершин, имеет больший периметр?

Найти периметр треугольника, заданного координатами своих вершин - C++
2. Составьте программу для решения задачи. Найдите периметр треугольника, заданного координатами своих вершин (считать, что треугольник...

Определить периметры треугольников, заданных координатами их вершин - C++
Здравствуйте!Помогите пожалуйста с программой. Задание: Определить периметры треугольников, заданных координатами их вершин XA(5),...

Треугольник задан координатами своих вершин. Найти его периметр и площадь. - C++
Здрасте) Помогите пожалуйста Треугольник задан координатами своих вершин. Найти его периметр и площадь. (Описать функцию вычисления...

Два треугольника заданы координатами своих вершин A,B,C. Вычислить площадь треугольника и определить какой треугольник имеет большую площадь - C++
Два треугольника заданы координатами своих вершин A,B,C. Вычислить площадь треугольника и определить какой треугольник имеет большую...

Треугольник задается координатами своих вершин. С++ - C++
Треугольник задается координатами своих вершин. Среди некоторого количества треугольников указать те, которые являются тупоугольными. найти...

2
MrGluck
Модератор
Эксперт CЭксперт С++
7423 / 4538 / 673
Регистрация: 29.11.2010
Сообщений: 12,319
21.12.2013, 03:01 #2
Колбаса, сосика, имеет цена?
0
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
21.12.2013, 13:59 #3
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
100
101
102
103
104
105
106
107
108
109
#include <cmath>
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <iomanip>
 
class Point {
 private:
  double x;
  double y;
 public:
  Point() : x(), y() {}
  Point(const double &x, const double &y) : x(x), y(y) {}
  const double &getX() const { return x; }
  const double &getY() const { return y; }
  double getDistanceTo(const Point &other) const {
    return std::sqrt(std::pow(getX() - other.getX(), 2.) + 
      std::pow(getY() - other.getY(), 2.));
  }
};
 
std::ostream &operator<<(std::ostream &stream, const Point &p) {
  return stream << "Point{" <<
    std::fixed << std::setprecision(3) <<
    "x = " << p.getX() <<
    ", y = " << p.getY() <<
    "}";
}
 
class Triangle {
 private:
  Point a;
  Point b;
  Point c;
 public:
  Triangle() : a(), b(), c() {}
  Triangle(const Point &a, const Point &b, const Point &c)
    : a(a), b(b), c(c) {}
  const Point &getA() const { return a; }
  const Point &getB() const { return b; }
  const Point &getC() const { return c; }
  double getPerimeter() const {
    return getA().getDistanceTo(getB()) + getB().getDistanceTo(getC()) +
      getC().getDistanceTo(getA());
  }
  static Triangle createRandom() {
    return Triangle(
      Point((rand() % 10000) / 1000., (rand() % 10000) / 1000.),
      Point((rand() % 10000) / 1000., (rand() % 10000) / 1000.),
      Point((rand() % 10000) / 1000., (rand() % 10000) / 1000.));
  }
};
 
std::ostream &operator<<(std::ostream &stream, const Triangle &t) {
  return stream << "Triangle{" <<
    std::fixed << std::setprecision(3) <<
    "a = " << t.getA() <<
    ", b = " << t.getB() <<
    ", c = " << t.getC() <<
    "}";
}
 
bool compareByPerimeter(const Triangle &a, const Triangle &b) {
  return a.getPerimeter() < b.getPerimeter();
}
 
template <class OutputIterator, class Size, class Generator>
void generate(OutputIterator first, Size n, Generator gen) {
  while (n>0) {
    *first = gen();
    ++first; --n;
  }
}
 
template <class ForwardIterator, class Compare>
ForwardIterator getMax(ForwardIterator first, ForwardIterator last, 
  Compare compare) {
  if (first==last) { 
    return last;
  }
  ForwardIterator largest = first;
 
  while (++first!=last) {
    if (compare(*largest, *first)) {
      largest=first;
    }
  }
  return largest;
}
 
int main(int, char**) {
  srand(time((time_t*)0));
 
  int numberOfTriangles = 5 + rand() % 5;
  Triangle triangles[numberOfTriangles];
 
  generate(triangles, numberOfTriangles, Triangle::createRandom);
  
  for (int i = 0; i < numberOfTriangles; ++i) {
    std::cout << triangles[i] << std::endl;
  }
 
  Triangle *largest = getMax(triangles, triangles + numberOfTriangles,
    compareByPerimeter);
  std::cout << "Largest by perimeter: " << *largest << 
    ", perimeter = " << largest->getPerimeter() << std::endl;
 
  return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2013, 13:59
Привет! Вот еще темы с ответами:

Определить периметр треугольника, заданного координатами вершин - C++
Определить периметр треугольника, заданного координатами вершин. Длину стороны треугольника вычислять в функции. Посчитать среднее...

Найти периметр многоугольника заданного координатами вершин - C++
1)Координаты вершин многоугольника заданы массивами {Xi,Yi}, i=1,2,…,n Считается, что вершины упорядочены в порядке обхода по часовой...

Вычислить периметр треугольника, заданного координатами вершин - C++
Добрый вечер. дано условие :&quot;Разработать функцию, вычисляющую длину стороны по координатам двух точек. Написать программу, вычисляющую...

Найти периметр и площадь треугольника, заданного координатами вершин - C++
Треугольник задан координатами (x1, y1), (x2, y2), (x3, y3) своих вершин. Найти периметр и площадь треугольника.


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

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

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