matematika.py
1.52 KB
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
def convertir_a_flotante(cadena):
try:
# Reemplaza la coma por un punto en caso de que la cadena use coma como separador decimal
cadena = cadena.replace(',', '.')
# Convierte la cadena a un número de coma flotante
return float(cadena)
except ValueError:
# Maneja el error en caso de que la conversión falle
print(f"Error: '{cadena}' no es un número válido")
return "?"
def dividir_a_la_mitad_y_redondear(num,res=1):
try:
# Divide el número a la mitad
resultado = num / 2
# Redondea el resultado a un dígito decimal
resultado_redondeado = round(resultado, res)
return resultado_redondeado
except TypeError:
# Maneja el error en caso de que el argumento no sea un número
print(f"Error: '{num}' no es un número válido")
return None
def PuntoComa(val,final=","):
if final == ".":
rta = val.replace(",",final)
else:
rta = val.replace(".",final)
return rta
def DividirPeso(total, res=1,sep=","):
"""Divide un string de peso a su mitad cpm la
resolucion definida en 1 por defecto y conversion de
puntocoma"""
try:
total = convertir_a_flotante(total)
mitad = dividir_a_la_mitad_y_redondear(total,res)
rto = PuntoComa(str(mitad),final=sep)
except Exception as E:
print(f"Error al dividir peso, error: {str(E)}")
rto = "?"
if rto in [None,"","None"]:
rto = "?"
print(f"dividir {total} {rto}")
return rto