1301 - Isoscel

From Bitnami MediaWiki
Revision as of 11:45, 16 April 2023 by Tuca Liviu Razvan (talk | contribs) (Pagină nouă: ==Cerință== Se citesc trei numere reale de la tastatură. Să se verifice dacă formează laturile unui triunghi '''isoscel'''. ==Date de intrare== Programul citește de la tastatură trei numere '''a b c'''. ==Date de ieșire== Programul va afișa pe ecran unul din următoarele mesaje: '''Formeaza triunghi isoscel''' – în cazul în care triunghiul este isoscel; '''Nu formeaza triunghi isoscel''' – în cazul în care triunghiul este echilateral sau oarecare; '''Nu fo...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerință

Se citesc trei numere reale de la tastatură. Să se verifice dacă formează laturile unui triunghi isoscel.

Date de intrare

Programul citește de la tastatură trei numere a b c.

Date de ieșire

Programul va afișa pe ecran unul din următoarele mesaje: Formeaza triunghi isoscel – în cazul în care triunghiul este isoscel; Nu formeaza triunghi isoscel – în cazul în care triunghiul este echilateral sau oarecare; Nu formeaza triunghi – în cazul în care numerele nu pot fi laturile unui triunghi.

Restricții și precizări

  • triunghiul echilateral nu este considerat isoscel
  • laturile triunghiului oarecare sunt distincte două câte două

Exemplul 1

Intrare
5 7.5 5
Ieșire
Formeaza triunghi isoscel

Rezolvare

Rezolvare ver. 1

<syntaxhighlight lang="python" line="1" start="1"> def validare(a, b, c):

   # Verifică dacă laturile triunghiului sunt pozitive și nenule
   if a <= 0 or b <= 0 or c <= 0:
       return False
   return True


def isoscel(a, b, c):

   # Verifică dacă laturile formează un triunghi
   if a + b <= c or a + c <= b or b + c <= a:
       print("Nu formeaza triunghi")
   # Verifică dacă triunghiul este isoscel
   elif a == b and b != c or a == c and c != b or b == c and b != a:
       print("Formeaza triunghi isoscel")
   else:
       print("Nu formeaza triunghi isoscel")


if __name__ == "__main__":

   # Citeste valorile de la tastatură și verifică dacă sunt valide
   a, b, c = map(float, input().split())
   if validare(a, b, c):
       print("Datele de intrare corespund restricțiilor impuse.")
       # Verifică dacă laturile formează un triunghi isoscel
       isoscel(a, b, c)
   else:
       print("Datele de intrare nu corespund restricțiilor impuse.")

</syntaxhighlight>