Scrie un program care, citind trei numere reale, verifica daca acestea pot reprezenta laturile unui triunghi. Daca raspunsul este afirmativ, atunci programul afiseaza ce fel de triunghi formeaza : ascutitunghic, dreptunghic sau obtuzunghic.
Răspunsuri la întrebare
Răspuns de
8
# include<iostream>
using namespace std;
int main()
{
float a, b, c;
cin >> a >> b >> c;
if(! ( a > 0 && b > 0 && c > 0 && a + b > c && a + c > b && b + c > a) )
cout << "Nu formeaza triunghi.";
else
{
float cos_a, cos_b, cos_c;
cos_a= (b * b + c * c - a * a) / (2 * b * c);
cos_b= (a * a + c * c - b * b) / (2 * a * c);
cos_c= (a * a + b * b - c * c) / (2 * a * b);
if(cos_a == 0 || cos_b == 0 || cos_c == 0) cout << "Triunghi dreptunghic.";
else if(cos_a < 0 || cos_b < 0 || cos_c < 0) cout << "Triunghi obtuzunghic.";
else if(cos_a > 0 && cos_b > 0 && cos_c > 0) cout << "Triunghi ascutitunghic.";
}
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă