Minions
(usa Nenhuma)
Enviado em 26/11/2024 - 15:44h
dark777 escreveu:
aguamole escreveu:
Ele esta reclamando do ponto flutuante ou ele está reclamando dos valores?
na verdade estou tentando evitar isso:
Alqueires..: 1.4999999999999998 alq.
Fazendo com que retorne corretamente o valor abaixo:
Alqueires..: 1.49 alq.
ou
Alqueires..: 1.50 alq.
Apenas as duas casas decimais seriam arredondadas para cima, então "1.4999999" retornaria "1.50" arredondado para cima, e para o valor "1.5000002" retornaria "1.50", e nao algo como "1.51", tentei adicionar "0.01" mas nao funciona em todos os casos pois as proporçoes mudam conforme cada medida.
wiki.anon
No JAVA tem um recurso de arredondadar para cima ou para baixo será que no Python tem que importar alguma coisa?
Visão geral criada por IA
Para arredondar um número para baixo em Python, pode usar a função math.floor(). O resultado do método floor sempre será um valor inteiro.
Para limitar o número de casas decimais em Python, pode usar a função round(). Esta função recebe dois argumentos: o número que deseja arredondar e o número de casas decimais que deseja.
Para arredondar para duas casas decimais, pode usar o método str.format(). Por exemplo, :.2f é usado entre colchetes para especificar que o número seja arredondado para duas casas decimais.
O arredondamento de números de ponto flutuante pode apresentar imprecisões, pois o processador trabalha com ponto flutuante binário e não decimal. Para ter precisão exata, pode usar um tipo decimal ou algo parecido.
Alterei isso:
print(f"Hectares...: {math.floor(hectares)} ha.")
Ex:
Dimensões área quadrada (Proporção 1:1):
Largura....: 491.93 metros
Comprimento: 491.93 metros
Hectares...: 24.2 ha.
Alqueires..: 10.0 alq.
Metros²....: 242000 m²
Dimensões área retângular (Proporção 1.5:1):
Largura....: 402 metros
Comprimento: 602 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 242000 m²
Dimensões área retângular (Proporção 1.21:1):
Largura....: 447 metros
Comprimento: 541 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 2:1):
Largura....: 348 metros
Comprimento: 696 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 2.21:1):
Largura....: 331 metros
Comprimento: 731 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 2.42:1):
Largura....: 316 metros
Comprimento: 765 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 2.5:1):
Largura....: 311 metros
Comprimento: 778 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 3:1):
Largura....: 284 metros
Comprimento: 852 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241999 m²
Dimensões área retângular (Proporção 4:1):
Largura....: 246 metros
Comprimento: 984 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241998 m²
Dimensões área retângular (Proporção 4.5:1):
Largura....: 232 metros
Comprimento: 1044 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241998 m²
Dimensões área retângular (Proporção 4.84:1):
Largura....: 224 metros
Comprimento: 1082 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241997 m²
Dimensões área retângular (Proporção 5:1):
Largura....: 220 metros
Comprimento: 1100 metros
Hectares...: 24 ha.
Alqueires..: 10.0 alq.
Metros²....: 241997 m²
depois alterei
# print(f"Hectares...: {hectares} ha.")
print(f"Hectares...: {math.floor(hectares)} ha.")