Enunciato di equivalenza

In un triangolo rettangolo il quadrato costruito su un cateto è equivalente al rettangolo avente per dimensioni l'ipotenusa e la proiezione di quel cateto sull'ipotenusa stessa.
In formule, facendo riferimento al triangolo rettangolo in figura:

AC2 = BC * CH

Enunciato di similitudine

In un triangolo rettangolo il cateto è medio proporzionale tra l'ipotenusa e la proiezione del cateto stesso sull'ipotenusa.
In formule, facendo riferimento al triangolo rettangolo in figura:

BC : AC = AC : CH

  

Programma python “I Teorema di Euclide”

#!/usr/bin/env python
#file IEuclide.py

import sys
import math

def ipotenusa (c1, pc1):
    return c1**2/pc1

def cateto1 (i, pc1):
    return math.sqrt (i*pc1)

def cateto2 (c1, i):
    return math.sqrt (i**2-c1**2)

print ('Primo teorema di Euclide')
print()
print ('Cosa conosci: ')
print ("1) Cateto e proiezione del cateto sull'ipotenusa")
print ("2) Ipotenusa e proiezione del cateto sull'ipotenusa")
print()
scelta = int(input('Scegli 1 o 2 '))
print ()

if scelta == 1:
    c1 = float (input ('Dammi il cateto --------------------------------> '))
    pc1 = float (input ("Dammi la proiezione del cateto sull'ipotenusa --> "))
    i = ipotenusa (c1, pc1)

if scelta == 2:
    i = float (input ("Dammi l'ipotenusa --------------------------------> "))
    pc1 = float (input ("Dammi la proiezione del cateto sull'ipotenusa --> "))
    c1 = cateto1 (i, pc1)

print ()
print ('Il secondo cateto lo possiamo calcolare con il teorema di Pitagora')
print ()
c2 = cateto2 (c1, i)
print ()
print ('Primo cateto -----> ',c1)
print ('Secondo cateto ---> ',c2)
print ('Ipotenusa --------> ',i)