online: 12; azi: 368; total: 52374 Manual clasa a ix a - Algoritmi - Rezolvare probleme de matematica

Manual clasa a IX a

Algoritmi

Rezolvare probleme de matematica

Se citesc coordonatele vârfului unui pătrat şi coeficienţii ecuaţiei carteziene generale a unei drepte pe care se găseşte una dintre laturile pătratului care nu trece prin acel vârf . Să se determine coordonatele celorlate vârfuri ale pătratului şi aria pătratului .
# include <iostream>
# include <cmath>
using namespace std;
int main () {
// Citim coordonatele vârfului pătratului
double x, y;
cout << "Introduceti coordonatele varfului pătratului: " ;
cin >> x >> y;
// Citim coeficienţii ecuaţiei dreptei pe care se găseşte o latură a pătratului
double a, b, c;
cout << "Introduceti coeficientii ecuatiei dreptei: " ;
cin >> a >> b >> c;
// Determinăm coordonatele punctelor de tăiere ale dreptei cu axele de coordonate
double x_intercept = -c/a;
double y_intercept = -c/b;
// Determinăm lungimea laturii pătratului folosind distanţa dintre punctele de tăiere
double length = sqrt ( pow (x - x_intercept, 2 ) + pow (y - y_intercept, 2 ));
// Determinăm coordonatele celorlalte vârfuri ale pătratului
double x2 = x - length * (y - y_intercept) / length;
double y2 = y + length * (x - x_intercept) / length;
double x3 = x2 + length * (y - y_intercept) / length;
double y3 = y2 - length * (x - x_intercept) / length;
// Calculăm aria pătratului
double area = pow (length, 2 );
// Afişăm coordonatele celorlalte vârfuri şi aria pătratului
cout << "Coordonatele celorlalte doua varfuri sunt: (" << x2 << ", " << y2 << ") si (" << x3 << ", " << y3 << ")" << endl;
cout << "Aria patratului este: " << area << endl;
return 0 ;
}

Notă: Programul presupune că dreapta dată intersectează o latură a pătratului, dar nu este latura pe care se află vârful dat.