# PBinfo #3804 – RazaCercInscris – Rezolvare C++

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

## Enunț

Cerința
Se dau lungimile laturilor unui triunghi. Aflați raza cercului înscris triunghiului.

Date de intrare
Programul citește de la tastatură numerele a, b, c, reprezentand lungimile laturilor triunghiului.

Date de ieșire
Programul va afișa pe ecran numărul r, reprezentând lungimea razei cercului înscris cu 2 zecimale exacte, daca triunghiul este valid, altfel se va afisa mesajul Imposibil.

Restricții și precizări

1 ≤ a, b, c ≤ 1000

Exemplul 1:
Intrare

3 4 5
Ieșire

1.00
Exemplul 2:
Intrare

4 5 10
Ieșire

Imposibil

## Cod sursă C++

```cpp
#include <iostream>
#include <math.h>
using namespace std;
int main() {
    double a, b, c;
    cin >> a >> b >> c;
    if (a + b >= c && b + c >= a && a + c >= b) {
        double sp = (a + b + c) / 2;
        double raza = (sqrt(sp * (sp - a) * (sp - b) * (sp - c)) / sp) * 100;
        if ((int) raza % 10 == 0) {
            if ((int) raza / 10 % 10 == 0)
                cout << (int) raza / 100 << ".00";
            else
                cout << (int) raza / 100 << "." << (int) raza / 10 % 10 << "0";
        } else
            cout << (int) raza / 100 << "." << (int) raza / 10 % 10 << (int) raza % 10;
    } else
        cout << "Imposibil";
    return 0;
}
```

## Resurse

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