Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 13.09.2018
Сообщений: 53
1

Подпрограмма: Создать функцию, определяющую расстояние между двумя точками по координатам...

18.02.2019, 11:41. Показов 593. Ответов 1
Метки нет (Все метки)

Создать функцию, определяющую расстояние между двумя точками по координатам(пожеланию,используйте структуры)и функцию, определяющую, что треугольник является прямоугольным. Дано множество точек на плоскости (их координаты). Определить, сколько прямоугольных треугольников можно создать из этого набора точек.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2019, 11:41
Ответы с готовыми решениями:

Создать функцию, определяющую расстояние между двумя точками по координатам (по желанию, используйте структуры)
Создать функцию, определяющую расстояние между двумя точками по координатам (по желанию,...

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

Создайте программу которая рассчитывает расстояние между двумя точками по их декартовым координатам в пространстве
Создайте программу которая рассчитывает расстояние между двумя точками по их декартовым координатам...

Написать Функцию, определяющую расстояние между точками
Здравствуйте.Нужна помощь.Задание решил, но пару пунктов не понял. Собственное вот задание:...

1
7 / 7 / 8
Регистрация: 19.06.2016
Сообщений: 134
18.02.2019, 13:18 2
Примерно так
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
#include <iostream>
#include <vector>
#include <cmath>
#include <ctime>
 
using namespace std;
 
struct coords2D {
    double x = 0;
    double y = 0;
};
 
struct triangle {
    coords2D z1, z2, z3;
};
 
int distanceCoords(const coords2D& a, const coords2D& b) {
    return sqrt(pow(b.x - a.x, 2.0) + pow(b.y - a.y, 2.0));
}
 
double maximum(double a, double b, double c)
{
   double max = ( a < b ) ? b : a;
   return ( ( max < c ) ? c : max );
}
 
bool isRightTriangle(double a, double b, double c) {
    double max = maximum(a, b, c);
    
    if (max == a)
            return pow(a, 2.0) == pow(b, 2.0) + pow(c, 2.0);
    else if (max == b)
            return pow(b, 2.0) == pow(a, 2.0) + pow(c, 2.0);
    else if (max == c)
            return pow(c, 2.0) == pow(b, 2.0) + pow(a, 2.0);
    
    return false;
} 
 
int main()
{
    
    const int N = 20; // Количество точек
    const int MIN_X = 0, MAX_X = 50; // Ограничение плоскости по X
    const int MIN_Y = 0, MAX_Y = 50; // Ограничение плоскости по Y
    
    
    vector<coords2D> dots(N);
    
    for (int i = 0; i < N; i++) {
        dots[i] = {double(rand() % (MAX_X - MIN_X) + MIN_X), double(rand() % (MAX_Y - MIN_Y) + MIN_Y)}; // Генерация N точек
    }
 
    
    vector<triangle> tr;
   
    for (int i = 0; i < dots.size(); i++) {
        for (int j = i + 1; j < dots.size(); j++) {
            for (int k = j + 1; k < dots.size(); k++) {
                if (!((dots[k].x- dots[i].x) / (dots[j].x - dots[i].x) == (dots[k].y - dots[i].y) / (dots[j].y - dots[i].y)))
                    tr.push_back({dots[i], dots[j], dots[k]});
            }
        }
    }
 
    int count = 0;
    
    for (auto it = tr.begin(); it != tr.end(); ++it) {
        double distanceZ1Z2 = distanceCoords(it->z1, it->z2);
        double distanceZ2Z3 = distanceCoords(it->z2, it->z3);
        double distanceZ3Z1 = distanceCoords(it->z3, it->z1);
        
        if (isRightTriangle(distanceZ1Z2, distanceZ2Z3, distanceZ3Z1)) {
            cout << distanceZ1Z2 << "," << distanceZ2Z3 << "," << distanceZ3Z1 << endl;
            count++;
        }
    }
    
    cout << "Can generate " << count << " right triangles" << endl;
   
    return 0;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2019, 13:18

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Определить функцию, которая возвращает расстояние между двумя точками на плоскости
Определить функцию, которая возвращает расстояние между двумя точками на плоскости.Вычислить...

Определить функцию, которая возвращает расстояние между двумя точками на плоскости
Вариант 5. Определите функцию, которая возвращает расстояние между двумя точками на плоско-сти где...

Определить площадь треугольника, используя функцию, вычисляющую расстояние между двумя заданными точками.
1. Даны действительные числа a, b, c. Найти z = g(a + b, c) + 4 ∗ g(a − b, 1.8), где g(x, y) =...

Описать функцию R(N) вещественного типа, вычисляющую расстояние между двумя точками заданными в декартовых координатах
Помогите пожалуйста с полным решением задачи в C# Описать функцию R(N) вещественного типа,...


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

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

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