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

Функции в С++ - C++

Восстановить пароль Регистрация
 
besss2011
1 / 1 / 0
Регистрация: 16.12.2011
Сообщений: 15
16.12.2011, 21:36     Функции в С++ #1
Помогите пожалуйста решить одну задачу с использованием функции:
Дано N треугольников, ввести их координаты, т.е x1,y1,x2,y2,x3,y3 и вывести на экран площадь наибольшего треугольника.
У меня получается только ввести один треугольник, а как ввести N количество, незнаю, предполагаю нужно через цикл, но уже пробовал, не получается.
Вот, что только получается:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
float OpredeleniePL(float x1, float y1, float x2, float y2, float x3, float y3)
{
    float a=sqrt(pow(x1-x2,2)+pow(y1-y2,2));
    float b=sqrt(pow(x3-x2,2)+pow(y3-y2,2));
    float c=sqrt(pow(x1-x3,2)+pow(y1-y3,2));
    float p=(a+b+c)/2;
    float PT=sqrt((p*(p-a)*(p-b)*(p-c)));
    return PT;
}
int main()
{
    float x1,y1,x2,y2,x3,y3;
    cout<<"BBEgUTE KOOPgUHATU x1,y1,x2,y2,x3,y3"<<endl;
    cin>>x1>>y1>>x2>>y2>>x3>>y3;
    cout<<"O6beM: "<<OpredeleniePL(x1,y1,x2,y2,x3,y3) <<endl;
    cin.get();
    cin.get();
    return 0;
}
Добавлено через 18 минут
или хотя бы скажите как её сделать, алгорит, может пойму.)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2011, 21:36     Функции в С++
Посмотрите здесь:

C++ Найти среднее арифметическое значений функции f(x) в точках a, b, (a+b)/2 используя обращение к функции
C++ Заданы три функции. Определить, являются ли эти функции четными или нечетными
C++ Определить конструкторы, функции-члены установки времени, функции получения часа, минуты и секунд
Одномерный массив и функции (сделать 3 функции ввода/решения/вывода) C++
Написать три функции, которые будут вызываться из функции main() C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yekka
384 / 148 / 8
Регистрация: 12.05.2011
Сообщений: 450
16.12.2011, 21:40     Функции в С++ #2
ну как вариант, можно ввести N в качестве первого числа, а далее
C++
1
2
3
4
int * ar = new int[N];
for (int i = 0; i < N; ++i) {
    cin >> ar[i];
}
FtarG
 Аватар для FtarG
128 / 128 / 6
Регистрация: 02.11.2010
Сообщений: 316
16.12.2011, 21:41     Функции в С++ #3
Цитата Сообщение от besss2011 Посмотреть сообщение
как ввести N количество
N-ое количество объектов необходимо хранить в структуре (например массив или список).
Вводить их туда естественно с помощью цикла.
besss2011
1 / 1 / 0
Регистрация: 16.12.2011
Сообщений: 15
19.12.2011, 18:34  [ТС]     Функции в С++ #4
besss2011
1 / 1 / 0
Регистрация: 16.12.2011
Сообщений: 15
19.12.2011, 18:39  [ТС]     Функции в С++ #5
Вот я решил эту задачу. Описание на Украинском:
N трикутників на площині задані координатами точок своїх вершин. Створити програму пошуку трикутника з найбільшою площею. Передбачте всі необхідні функції. Наприклад для пошуку площі трикутника.
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
#include <iostream>
using namespace std;
int n;
float k=0;
float OpredeleniePL(float x1,float y1,float x2,float y2,float x3,float y3)
{
 
                float a=sqrt(pow(x1-x2,2)+pow(y1-y2,2));
                float b=sqrt(pow(x3-x2,2)+pow(y3-y2,2));
                float c=sqrt(pow(x1-x3,2)+pow(y1-y3,2));
                float p=(a+b+c)/2;
                float PT=sqrt(p*(p-a)*(p-b)*(p-c));
                if (k<PT)
                    k=PT;
                return PT;  
}
int main()
{
    float x1,y1,x2,y2,x3,y3;
    cout<<"BBEgUTE KOli4ECTBO TPUKyTHUKOB"<<endl;
    cin>>n;
    cout<<"BBEgUTE X1 Y1, X2 Y2,X3 Y3"<<endl;
    for(int i=0;i<n;i++)
        {cin>>x1>>y1>>x2>>y2>>x3>>y3;   
    //for(int i=0;i<n;i++)
    cout<<"Pl: "<<i+1<<" TPUKyTHUK"<<endl<<OpredeleniePL(x1,y1,x2,y2,x3,y3)<<endl;}
       cout <<"MAKCUMyM:"<< k<<endl;
    cin.get();
    cin.get();
    return 0;
}
Миниатюры
Функции в С++  
Yandex
Объявления
19.12.2011, 18:39     Функции в С++
Ответ Создать тему
Опции темы

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