Sunteți pe pagina 1din 2

#include <iostream>

#include <cmath>

class Punct {
private:
float x, y;

public:
Punct(float xCoord, float yCoord) : x(xCoord), y(yCoord) {}

void afisare() {
std::cout << "(" << x << ", " << y << ")";
}

friend class Triunghi;


};

class Triunghi {
private:
Punct varf1, varf2, varf3;

public:
Triunghi(Punct p1, Punct p2, Punct p3) : varf1(p1), varf2(p2), varf3(p3) {}

void verificaTip() {
float latura1 = distanta(varf1, varf2);
float latura2 = distanta(varf2, varf3);
float latura3 = distanta(varf3, varf1);

if (latura1 == latura2 && latura3 == latura3)


std::cout << "Echilateral";
else if (latura1 == latura2 || latura2 == latura3 || latura3 == latura1)
std::cout << "Isoscel";
else
std::cout << "Oarecare";
}

private:
float distanta(Punct p1, Punct p2) {
return std::sqrt(std::pow(p2.x - p1.x, 2) + std::pow(p2.y - p1.y, 2));
}
};

int main() {
Punct p1(0, 0);
Punct p2(1, 0);
Punct p3(0.5, std::sqrt(3) / 2);

std::cout << "Coordonatele punctului p1: ";


p1.afisare();
std::cout << std::endl;

std::cout << "Coordonatele punctului p2: ";


p2.afisare();
std::cout << std::endl;

std::cout << "Coordonatele punctului p3: ";


p3.afisare();
std::cout << std::endl;
Triunghi triunghi(p1, p2, p3);
std::cout << "Triunghiul este: ";
triunghi.verificaTip();
std::cout << std::endl;

return 0;
}

S-ar putea să vă placă și