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

Найти треугольник наибольшей площади с вершинами в данных точках - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти площадь фигуры http://www.cyberforum.ru/cpp-beginners/thread1304587.html
Найти площадь фигуры F1=pow(x,2)+1 F2=3-pow(x,2) цикл while. Решение: #include <math.h> #include <stdio.h> #include <windows.h> int main()
C++ Простой калькулятор и калькулятор с парсингом Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который работает с 2 числами. Возник вопрос, как сделать так чтобы можно было вводить 2 + 5 - 9... И тд. Если такая тема уже была скиньте ссыль, зарание благодарен! #include <iostream> #include <cmath> using namespace std; int main() { float a, b, s; http://www.cyberforum.ru/cpp-beginners/thread1304577.html
C++ Найти наибольший элемент двух массивов и записать единицу в тот ряд и столбец
Найти наибольший элемент двух массивов и записать единицу в тот ряд и столбец где они находятся. Помогите пожалуйста, не могу понять что не правильно в функции "changeArray". Мой код: #include "stdafx.h" #include <iostream> using namespace std; const int n = 6; const int m = 5;
Задачи с циклами C++
Не судите строго... Помогите пожалуйста сделать вот это Напишите задание руками и создайте три различных темы для решения трех разных задач
C++ Вычислить количество столбцов, которые имеют нулевые элементы матрицы и их номера http://www.cyberforum.ru/cpp-beginners/thread1304551.html
Вычислить количество столбцов, которые имеют нулевые элементы матрицы и их номера, элементы разместить в памяти динамически. Не могу сделать что бы программа смогла вычислять кол-во столбцов с нулями. Подскажите пожалуйста как сделать. Мой код: #include "stdafx.h" #include <iostream> using namespace std; int main(){ int n, m, k ;
C++ Округляет значение double Всем доброго времени суток. Написал конвертор преобразующие дюймы в футы // Программа для преобразования // дюймов в футы: // Inch = Feet/nRatio // #include <stdio.h> #include <iostream> using namespace std; подробнее

Показать сообщение отдельно
Ирина 379
0 / 0 / 0
Регистрация: 15.10.2014
Сообщений: 29
23.11.2014, 22:34  [ТС]     Найти треугольник наибольшей площади с вершинами в данных точках
Написали код, но не понятно, что производится в цикле (там где i,j,k). И почему вершины задаются именно таким набором координат? Заранее спасибо!!!!
Условие задачи:
Дано натуральное число n. С помощью двумерного действительного числового массива [xij]i=1,2; j=1,...,n на плоскости задано n точек так, что x1j, x2j – координаты j-й точки. Найти треугольник наибольшей площади с вершинами в этих точках.
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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    int Ax,Ay,Bx,By,Cx,Cy,n;
    int m[10][2];
    cout<<"n=";
    cin>>n;
    double S, A, B, C, p;
 
    for (int i=0;i<n;i++) cin >> m[i][0] >> m[i][1]; // ввод пары x и y
 
    for (int i = 0; i < n - 2; i++)
        for (int j = i + 1; j < n - 1; j++)
            for (int k = j + 1; k < n; k++)
            {
                // Вершины
                Ax = m[i][0]; // x
                Ay = m[i][1]; // y
                Bx = m[j][0];
                By = m[j][1];
                Cx = m[k][0];
                Cy = m[k][1];
                // Стороны
                A = sqrt(double((Ax - Bx) * (Ax - Bx) + (Ay - By) * (Ay - By)));
                B = sqrt(double((Ax - Cx) * (Ax - Cx) + (Ay - Cy) * (Ay - Cy)));
                C = sqrt(double((Bx - Cx) * (Bx - Cx) + (By - Cy) * (By - Cy)));
                p = (A + B + C) / 2; // полупериметр
                S = sqrt(p * (p - A) * (p - B) * (p - C)); // площадь
            }
    
    cout << S;
 
    system ("pause");
    return 0;
}
 
Текущее время: 19:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru