# PBinfo #1333 – trapez – Rezolvare C++

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

## Enunț

Cerința
Cunoscând laturile unui trapez isoscel, să se calculeze lungimea diagonalei.

Date de intrare
Programul citește de la tastatură numerele reale B, b și l, separate prin spații, reprezentând baza mare, baza mică și lungimea laturilor oblice.

Date de ieșire
Programul va afișa pe ecran numărul d, reprezentând diagonala trapezului.

Restricții și precizări

0 < B, b, l, d < 1000
rezultatul va fi punctat dacă diferența dintre cel afișat de program și cel corect este mai mică decât 0.01.

Exemplu:
Intrare

6 2 5
Ieșire

6.08276
Explicație
Valoarea bazei mari este 6, baza mică este 2, laturile oblice au valoarea 5. Diagonala trapezului este 6.08276

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
int main() {
    double B, b, l, inal, temp, diag;
    cin >> B >> b >> l;
    temp = (B - b) / 2;
    inal = sqrt(l * l - temp * temp);
    diag = sqrt((b + temp) * (b + temp) + inal * inal);
    cout << diag;
    return 0;
}
```

## Resurse

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