# PBinfo #3813 – Unghiuri – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: deivid

## Enunț

Cerința
Se dau lungimile laturilor unui triunghi ABC. Aflati masurile unghiurilor A, B, C.

Date de intrare
Programul citește de la tastatură lungimile laturilor AB, BC, AC.

Date de ieșire
Programul va afișa pe ecran masura unghiurilor A, B, C cu 2 zecimale exacte daca triunghiul este valid, altfel se afiseaza mesajul Imposibil.

Restricții și precizări

1 ≤ AB,BC,AC ≤ 1000

Exemplul 1:
Intrare

7 8 6
Ieșire

75.52 46.56 57.91
Exemplul 2:
Intrare

4 5 10
Ieșire

Imposibil

## Cod sursă C++

```cpp
#include <iostream>
#include <cmath>
#define PI 3.141592653589
using namespace std;
int main()
{
    double AB,BC,AC,u1,u2,u3;
    cin>>AB>>BC>>AC;
    if(AB+BC>AC && AB+AC>BC && BC+AC>AB)
    {
        u1=acos((AC*AC+AB*AB-BC*BC)/(2*AC*AB));
        u2=acos((AB*AB+BC*BC-AC*AC)/(2*AB*BC));
        u3=acos((AC*AC+BC*BC-AB*AB)/(2*BC*AC));
        int U1=(u1*180/PI)*100,U2=(u2*180/PI)*100,U3=(u3*180/PI)*100;
        cout<<U1/100<<"."<<U1/10%10<<U1%10<<" ";
        cout<<U2/100<<"."<<U2/10%10<<U2%10<<" ";
        cout<<U3/100<<"."<<U3/10%10<<U3%10;
    }
    else
        cout<<"Imposibil";
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/3813)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/3813/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-3813/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
