DEV Community

Vitor Norton
Vitor Norton

Posted on

Como dividir inteiros no C#?

Pergunta básica que recebo sempre que eu vou explicar operadores matemáticos em C#, como fazer para dividir números inteiros? Isso pois mesmo ao dividir 5 por 2 vai resultar em 2 e não 2.5, mesmo que a variável seja double.

int numero = 5;
int divisor = 2;
decimal resultado = numero / divisor; 

Console.WriteLine("O resultado é: " + resultado);
// O resultado é: 2
// O correto seria o resultado ser 2.5
Enter fullscreen mode Exit fullscreen mode

Por algum motivo bizarro o C# não faz a conta direito se tiver um número inteiro nela. Portanto você precsia converter estes números para decimal para conseguir fazer a conta.

Então poderia fazer algo como decimal.Parse(numero) / decimal.Parse(divisor). Outra maneira é fazer da seguinte forma:decimal resultado = Decimal.Divide(numero, divisor);

Existe também o Double.Divide() e o double.parse() caso você não esteja utilizando o tipo decimal.

Essa função .Divide() vai basicamente fazer o seguinte: decimal.Parse(a) + decimal.Parse(b) que é converter cada item para decimal para então te trazer um valor com casas decimais.

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay