3805 - Rază Cerc Circumscris: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: ==Cerință== Se dau lungimile laturilor unui triunghi. Aflați '''raza''' cercului circumscris 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 circumscris cu '''2 zecimale exacte''', daca triunghiul este valid, altfel se va afisa mesajul '''Imposibil''' ==Restricți...
 
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:


==Date de ieșire==
==Date de ieșire==
Programul va afișa pe ecran numărul '''R''', reprezentând lungimea razei cercului circumscris cu '''2 zecimale exacte''', daca triunghiul este valid, altfel se va afisa mesajul '''Imposibil'''
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran numărul '''R''', reprezentând lungimea razei cercului circumscris cu '''2 zecimale exacte''', daca triunghiul este valid, altfel se va afisa mesajul '''Imposibil'''. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."


==Restricții și precizări==
==Restricții și precizări==
Line 14: Line 14:
;Intrare
;Intrare


:3 4 5
:3  
:4  
:5


;Ieșire
;Ieșire
 
:Datele de intrare corespund restricțiilor impuse.
:2.50
:2.50


Line 23: Line 25:
;Intrare
;Intrare


:4 5 10
:4  
:5  
:10


;Ieșire
;Ieșire
 
:Datele de intrare corespund restricțiilor impuse.
:Imposibil
:Imposibil



Latest revision as of 18:06, 22 April 2023

Cerință[edit | edit source]

Se dau lungimile laturilor unui triunghi. Aflați raza cercului circumscris triunghiului.

Date de intrare[edit | edit source]

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

Date de ieșire[edit | edit source]

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran numărul R, reprezentând lungimea razei cercului circumscris cu 2 zecimale exacte, daca triunghiul este valid, altfel se va afisa mesajul Imposibil. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări[edit | edit source]

  • 1 ≤ a, b, c ≤ 1000

Exemplul 1[edit | edit source]

Intrare
3
4
5
Ieșire
Datele de intrare corespund restricțiilor impuse.
2.50

Exemplul 2[edit | edit source]

Intrare
4
5
10
Ieșire
Datele de intrare corespund restricțiilor impuse.
Imposibil

Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<syntaxhighlight lang="python" line="1" start="1"> import math


  1. Functia pentru validarea lungimilor laturilor triunghiului

def validare(a, b, c):

   # Verifica daca fiecare lungime de latura este intre 1 si 1000
   if 1 <= a <= 1000 and 1 <= b <= 1000 and 1 <= c <= 1000:
       return True
   return False


  1. Functia pentru calcularea razei cercului circumscris triunghiului

def raza_cercului(a, b, c):

   # Verifica daca lungimile sunt pozitive si conform conditiei triunghiului
   if a <= 0 or b <= 0 or c <= 0:
       print("Imposibil")
   elif a + b <= c or b + c <= a or c + a <= b:
       print("Imposibil")
   else:
       # Calculeaza semiperimetrul triunghiului
       s = (a + b + c) / 2
       # Calculeaza aria triunghiului folosind formula lui Heron
       area = math.sqrt(s * (s - a) * (s - b) * (s - c))
       # Calculeaza raza cercului circumscris folosind formula ariei si lungimile laturilor
       radius = (a * b * c) / (4 * area)
       # Afiseaza rezultatul cu doua zecimale exacte
       print("{:.2f}".format(radius))


if __name__ == "__main__":

   # Citeste lungimile laturilor triunghiului de la tastatura
   a = int(input("Introduceti lungimea primei laturi: "))
   b = int(input("Introduceti lungimea celei de-a doua laturi: "))
   c = int(input("Introduceti lungimea celei de-a treia laturi: "))
   # Verifica daca lungimile laturilor sunt valide
   if validare(a, b, c):
       print("Datele de intrare corespund restricțiilor impuse.")
       # Calculeaza raza cercului circumscris si o afiseaza
       raza_cercului(a, b, c)
   else:
       print("Datele de intrare nu corespund restricțiilor impuse.")

</syntaxhighlight>