Главная » 2015 » Октябрь » 6 » методичка 2 задача 26
09:23
методичка 2 задача 26

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    setlocale(LC_ALL,"rus_rus.1251");
    double x1,y1,x2,y2,x3,y3,a,b,c,b1,b2,b3;
    cout << "Введите координату первой точки x1, y1 "<<endl;   
    cin >> x1 >> y1;
    cout << "Введите координату второй точки x2, y2 "<<endl;   
    cin >> x2 >> y2;
    cout << "Введите координату третьей точки x3, y3 "<<endl;   
    cin >> x3 >> y3;
    //находим стороны треугольника
    a=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
    b=sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
    c=sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
    //проверка того, что из чисел a,b,c можно составить треугольник
    if ((a==b+c)||(b==a+c)||(c==a+b))
        cout<<"Это не треугольник"<<endl;
    else
    {
        cout<<"Это треугольник"<<endl;

        //определяем b1,b2,b3
        b1=(y1*x2-x1*y2)/(x2-x1);
        b2=(y2*x3-x2*y3)/(x3-x2);
        b3=(y1*x3-x1*y3)/(x3-x1);

        //определяем положение начала координат
        if  (((b1>=0)&&(b2>=0)&&(b3<=0))||
             ((b3>=0)&&(b2>=0)&&(b1<=0))||
             ((b1>=0)&&(b3>=0)&&(b2<=0)))
             cout <<"Начало координат лежит внутри треугольника"<<endl;
        else
            cout <<"Начало координат не лежит внутри треугольника"<<endl;
    }

    system("pause");
    return 0;
}

Просмотров: 373 | Добавил: denjes | Рейтинг: 0.0/0
Всего комментариев: 0
avatar