Да се напише програма, която позволява да се въведат (чрез структури) координатите на 4 точки от равнината, които са поредни върхове на четириъгълник и после проверява и отпечатва дали те са върхове на правоъгълник, успореден на координатните оси.
По желание: Да се провери дали въобще са върхове на правоъгълник.


#include <cstdlib> #include <iostream> #include <math.h> using namespace std; int main(int argc, char *argv[]) { struct Tochka { int x; int y; }; Tochka a,b,c,d; bool Ima=0; double AB,BC,CD,AD; cout<<" D.__________________.C"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" | |"<<endl; cout<<" A.__________________.B"<<endl; cout<<"A : "; cin>>a.x>>a.y; cout<<"B : "; cin>>b.x>>b.y; cout<<"C : "; cin>>c.x>>c.y; cout<<"D : "; cin>>d.x>>d.y; AB=sqrt(pow(a.x-b.x,2)+pow(a.y-b.y,2)); CD=sqrt(pow(c.x-d.x,2)+pow(c.y-d.y,2)); BC=sqrt(pow(b.x-c.x,2)+pow(b.y-c.y,2)); AD=sqrt(pow(a.x-d.x,2)+pow(a.y-d.y,2)); //presmqtane na dyljinata na stranite if ((AB==CD)&&(AD==BC)&&(sqrt(pow(c.x-a.x,2)+pow(c.y-a.y,2))==sqrt(pow(d.x-b.x,2)+pow(d.y-b.y,2)))) Ima=1; //proverka dali sy6testvuta takyv pravoygylnik if (Ima) { cout<<"Ima takyv pravoygylnik ";//izvejdane na podhodq6to syob6tenie if (a.y==b.y) cout<<"i e usporeden na osite"<<endl;//proverka dali e usporeden na pone edna ot osite else cout<<"no ne e usporeden na osite"<<endl; } else cout<<"Nqma takyv pravoygylnik"<<endl; system("PAUSE"); return EXIT_SUCCESS; }Nate, със схема и с проверка за произволен правоъгълник – супер!