3901 - Latură Triunghi

From Bitnami MediaWiki
Revision as of 16:25, 1 April 2023 by Adrian (talk | contribs) (Pagină nouă: == Cerința == Se dau două laturi ale unui triunghi oarecare și măsura unghiului dintre ele. Aflați lungimea celeilalte laturi. == Date de intrare == Programul citește de la tastatură numerele naturale '''latura1''', '''latura2''', '''unghi''', reprezentând lungimea celor două laturi și măsura unghiului dintre ele. == Date de ieșire == Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afișa pe ecran num...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința

Se dau două laturi ale unui triunghi oarecare și măsura unghiului dintre ele. Aflați lungimea celeilalte laturi.

Date de intrare

Programul citește de la tastatură numerele naturale latura1, latura2, unghi, reprezentând lungimea celor două laturi și măsura unghiului dintre ele.

Date de ieșire

Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afișa pe ecran numărul latura3 reprezentând lungimea celeilalte laturi, cu cel puțin 2 zecimale exacte.

În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse".

Restricții și precizări

  • 1 ⩽ latura1, latura2 ⩽ 1000
  • 1 ⩽ unghi ⩽ 179
  • Rezultatul va avea cel mult 2 zecimale exacte

Exemplu 1

Intrare
22
29
40
Ieșire
Datele de intrare corespund restricțiilor impuse
18.64


Exemplu 2

Intrare
22
29
180
Ieșire
Nu au fost respectate cerintele impuse


Rezolvare

<syntaxhighlight lang="python" line>

  1. 3901 - LaturaTriunghi

from math import cos, sqrt, pi


def laturatriunghi():

   latura1 = int(input())
   latura2 = int(input())
   unghi = int(input())
   conditii = (
       latura1 >= 1, latura1 <= 1000,
       latura2 >= 1, latura2 <= 1000,
       unghi >= 1, unghi <= 179
   )
   if all(conditii):
       print("Datele de intrare corespund restricțiilor impuse")
       latura3 = sqrt(
           latura1 ** 2 + latura2 ** 2 - 2 * latura1 * latura2 *
           cos(pi * unghi / 180)
       )
       print(f"{latura3:.2f}")
   else:
       print("Nu au fost respectate cerintele impuse")


if __name__ == '__main__':

   laturatriunghi()

</syntaxhighlight>