3814 - Arie Patrulater Inscriptibil

From Bitnami MediaWiki
Revision as of 17:12, 22 October 2023 by AntalKrisztian (talk | contribs) (Pagină nouă: == Cerinţa == Se dau lungimile laturilor patrulaterului inscriptibil '''ABCD'''. Aflati aria acestuia. == Date de intrare == Programul citește de la tastatură lungimile laturilor '''AB, BC, CD, AD'''. == Date de ieşire == Programul va afișa pe ecran aria patrulaterului, cu '''3''' zecimale exacte. == Restricții și precizări == * 1 ⩽ AB, BC, CD, AD ⩽ 1000 == Exemplu == ; Intrare ; 13 14 3 13 ; Ieșire ; 100.123 == Rezolvare == <syntaxhighlight lang="python" lin...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerinţa

Se dau lungimile laturilor patrulaterului inscriptibil ABCD. Aflati aria acestuia.

Date de intrare

Programul citește de la tastatură lungimile laturilor AB, BC, CD, AD.

Date de ieşire

Programul va afișa pe ecran aria patrulaterului, cu 3 zecimale exacte.

Restricții și precizări

  • 1 ⩽ AB, BC, CD, AD ⩽ 1000

Exemplu

Intrare
13 14 3 13
Ieșire
100.123

Rezolvare

<syntaxhighlight lang="python" line>

  1. Construim radicalul

def radical(n):

   return n ** 0.5

def problema_3814(lat1, lat2, lat3, lat4):

   # Semiperimetrul
   s_perimetru = (lat1 + lat2 + lat3 + lat4) / 2
   # Aria patrulaterului
   aria = radical((s_perimetru - lat1) * (s_perimetru - lat2) * (s_perimetru - lat3) * (s_perimetru - lat4))
   # Rotunjim suma obtinuta la 3 decimale
   return round(aria, 3)
  1. Testam problema

if __name__ == "__main__":

   print(problema_3814(13, 14, 3, 13))

</syntaxhighlight>