Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Double e Decimal estão iguais

No meu exercício o Double e o Decimal retornaram o mesmo número de casas decimais.

2 respostas

Olá Fernando, tudo bem?

Fiz um teste utilizando os dois valores que estão sugerido no exercício:

Dim numerador As Decimal
Dim denominador As Decimal

numerador = 5.25
denominador = 3.45

Dim resultadoDecimal As Decimal
resultadoDecimal = numerador / denominador

System.Console.WriteLine("Usando Decimal: " & resultadoDecimal)

Dim resultadoDouble As Double
resultadoDouble = numerador / denominador

System.Console.WriteLine("Usando Double: " & resultadoDouble)

Esse teste foi feito numa aplicação console. O resultado foi o seguinte:

Isso ocorre porque essa divisão resulta em várias casas decimais e o tipo Decimal suporta váras casas a mais que o tipo Double.

Tente números como esses ou mesmo faça simplesmente a divisão de 10 por 3, que dará como resultado:

Usando Decimal: 3.3333333333333333333333333333
Usando Double: 3.33333333333333

Espero ter ajudado!

solução!

A lógica da explicação eu havia entendido, o problema era quando repetia o código exatamente como o dele, não havia diferenciação (o número de casas decimais ficava igual) entre "resultadoDecimal" e "resultadoDouble".

Depois de tentar várias vezes, alterei a declaração das variáveis "numerador" e "denominador" de Double para Decimal, aí ocorreu a diferenciação.

Mas continuava sem entender pq no computador dele ocorre diferente, depois revi o vídeo e percebi que ele tinha feito essa alteração e eu não tinha visto.