Это начало моего кода, который должен быть присоединен к гораздо большему коду, где я должен использовать 3 вектора, чтобы определить, есть ли у меня треугольник, и если это так, вычислить область несколькими методами (например, по формуле Герона)для домашнего задания.
Мой главный вопрос заключается в том, что, учитывая приведенный ниже код, должны получиться стороны с длинами соответственно 5/4/3 ... почему я получаю результаты 4.6e-310 /6.9e-310 / 0.
Я знаю, что мой код может быть не очень красивым и может иметь грубые концептуальные ошибки, но я изучал C ++ только 3 недели после изучения Fortran в течение месяца .. ... и я чувствую себя супер потерянным, пытаясь это сделать.
#include <iostream>
#include <math.h>
// design vector class
class Vector {
private:
double Side1() {
return sqrt(pow(p1x-p2x,2)+pow(p1y-p2y));
}
double Side2() {
return sqrt(pow(p2x-p3x,2)+pow(p2y-p3y,2));
}
double Side3() {
return sqrt(pow(p3x-p1x,2)+pow(p3y-p1y,2));
}
public:
double p1x=1.0, p2x=4.0, p3x=4.0;
double p1y=5.0, p2y=9.0, p3y=5.0;
};
// get length
int main() {
double Side1, Side2, Side3;
std::cout << "Side 1 length is " << Side1 << std::endl;
std::cout << "Side 2 length is " << Side2 << std::endl;
std::cout << "Side 3 length is " << Side3 << std::endl;
return 0;
}