Informatică, întrebare adresată de oanamanmaria3984, 8 ani în urmă

Se consideră patru puncte A, B, C, D date în plan prin coordonatele lor (reale). Să se construiască o funcţie C care determină dacă ABCD este romb.

Răspunsuri la întrebare

Răspuns de andrei750238
1

#include <iostream>

#include <cmath>

using namespace std;

//Structura care retine coordonatele unui punct

struct Punct {

float x, y;

};

//Functie care retruneaza distanta intre doua puncte

float distanta(Punct a, Punct b) {

return sqrt((a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y));

}

bool testRomb(Punct a, Punct b, Punct c, Punct d) {

float ab = distanta(a, b);

float bc = distanta(b, c);

float cd = distanta(c, d);

float ad = distanta(a, d);

if (ab == bc && ab == cd && ab == ad) return true;

return false;

}

int main() {

Punct a, b, c, d;

cout << "Coordonate puncte : ";

cin >> a.x >> a.y;

cin >> b.x >> b.y;

cin >> c.x >> c.y;

cin >> d.x >> d.y;

if (testRomb(a, b, c, d)) cout << "Da";

else cout << "Nu";

}

Explicatie :

Patru puncte A,B,C,D formeaza un romb daca si numai daca AB=BC=CD=AD.

AB = distanta euclidica intre punctele A si B

Alte întrebări interesante