-
Notifications
You must be signed in to change notification settings - Fork 0
/
04_area_de_poligono.py
32 lines (30 loc) · 967 Bytes
/
04_area_de_poligono.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from math import sqrt
def area_poligonos (base, *perimetro):
if len(perimetro) == 2:
datos = list(perimetro)
dt = (datos[0] + datos[1] + base) / 2
altura = (2 * sqrt(dt * (dt - datos[0]) * (dt - datos[1]) * (dt - base) )) / base
area = altura * base / 2
return area
elif len(perimetro) == 3:
datos = list(set(perimetro))
if len(datos) == 1:
area = base * datos[0]
return area
elif len(datos) == 2:
altura = min(datos)
area = altura * base
return area
else:
return "**No es posible con esos tipos de datos**"
else:
return "**Datos insuficientes**"
tríangulo = area_poligonos(5, 9, 7)
cuadrado = area_poligonos(4, 8, 8, 4)
rectángulo = area_poligonos(9, 8, 9, 8)
print("area de triángulo")
print(tríangulo)
print("area de cuadrado")
print(cuadrado)
print("area de rectángulo")
print(rectángulo)