from decimal import *
flt = 0.0 #Declara um acumulador de ponto flutuante
dcm = Decimal('0') #Declara um acumulador de ponto fixo flutuante
#Simula 100.000 operações financeiras em cada acumulador no valr de R$ 0,70 ou seja 100.000 * 0,70 == R$ 70000,00
for _ in range(100_000):
flt += 0.7
dcm += Decimal('0.7')
#Imprime o resultado dos acumuladores mostrando as perdas devido a imprecisão intrínseca em números de ponto flutuante
print(f'Decimal de ponto flutuante: {flt}\nDecimal de ponto fixo: {dcm}')
ZnJvbSBkZWNpbWFsIGltcG9ydCAqCgpmbHQgPSAwLjAgICAgICAgICAgICAgICNEZWNsYXJhIHVtIGFjdW11bGFkb3IgZGUgcG9udG8gZmx1dHVhbnRlCmRjbSA9IERlY2ltYWwoJzAnKSAgICAgI0RlY2xhcmEgdW0gYWN1bXVsYWRvciBkZSBwb250byBmaXhvIGZsdXR1YW50ZQoKI1NpbXVsYSAxMDAuMDAwIG9wZXJhw6fDtWVzIGZpbmFuY2VpcmFzIGVtIGNhZGEgYWN1bXVsYWRvciBubyB2YWxyIGRlIFIkIDAsNzAgb3Ugc2VqYSAxMDAuMDAwICogMCw3MCA9PSBSJCA3MDAwMCwwMApmb3IgXyBpbiByYW5nZSgxMDBfMDAwKToKCWZsdCArPSAwLjcKCWRjbSArPSBEZWNpbWFsKCcwLjcnKQoJCiNJbXByaW1lIG8gcmVzdWx0YWRvIGRvcyBhY3VtdWxhZG9yZXMgbW9zdHJhbmRvIGFzIHBlcmRhcyBkZXZpZG8gYSBpbXByZWNpc8OjbyBpbnRyw61uc2VjYSBlbSBuw7ptZXJvcyBkZSBwb250byBmbHV0dWFudGUgCnByaW50KGYnRGVjaW1hbCBkZSBwb250byBmbHV0dWFudGU6IHtmbHR9XG5EZWNpbWFsIGRlIHBvbnRvIGZpeG86IHtkY219JykKCQ==