Adriano,
experimente desta forma:
using System;
class Programa
{
static void Main(string[] args)
{
decimal capitalInicial = 1000m;
double taxa = 0.005;
decimal taxaTotal = 1;
decimal rendimento = 0;
decimal montante = 0;
int meses = 1;
while (meses >= 1)
{
taxaTotal *= (decimal)(1 + taxa);
meses--;
}
montante = capitalInicial * taxaTotal;
rendimento = montante - capitalInicial;
Console.WriteLine("CAPITAL INICIAL: " + capitalInicial);
Console.WriteLine("TAXA: " + taxa);
Console.WriteLine("Taxa total = " + taxaTotal);
Console.WriteLine("RENDIMENTO: " + rendimento);
Console.WriteLine("MONTANTE: " + montante);
Console.ReadKey();
}
}
Qual é o segredo? Mágica Voodoo Caribenha? Não...
- O tipo float é um tipo de ponto flutuante de simples precisão.
- O tipo double cobre uma faixa de valores maior do que float e decimal.
- O tipo decimal tem precisão maior do que float e double.
- O tipo decimal também é um tipo de ponto flutuante.
Por favor, assista as duas aulas abaixo:
==========================================================
01 - Ponto Flutuante
https://cursos.alura.com.br/course/certificacao-csharp-criar-tipos/task/42718
==========================================================
02 - Decimal
https://cursos.alura.com.br/course/certificacao-csharp-criar-tipos/task/42719
==========================================================
Agora para fechar com chave de ouro, por favor leia os textos abaixo:
==========================================================
C# - Usando o ponto flutuante nos cálculos
José Carlos Macoratti
Conclusão
Para qualquer cálculo que envolva dinheiro ou finanças, o tipo Decimal deve ser sempre utilizado.
Só este tipo tem a precisão adequada para evitar os erros críticos de arredondamento.
https://www.macoratti.net/18/04/c_pontflut1.htm
==========================================================
.Net - Float(Single), Double e Decimal. Afinal qual devo usar ?
José Carlos Macoratti
- Qual o tamanho dos números que sua aplicação vai tratar ? Eles estão no extremo, tanto positivo ou negativo ?
- Qual a precisão que você precisa ter em seus cálculos ? É de sete dígitos ? Dezesseis dígitos ? muito mais que isso ?
- Você consegue dimensionar o quanto de memória será gasto na utilização do ponto flutuante ?
- Os números são proveniente de um banco de dados que já especifica o tamanho usado ?
Decidir qual o tipo de ponto flutuante usar vai depender da aplicação, mas aqui estão alguns considerações que podem ajudar a decidir:
https://www.macoratti.net/12/12/c_num1.htm
==========================================================
Qual a forma correta de usar os tipos float, double e decimal?
0.2 + 0.8 é diferente de 1.0?!?!?!?!
https://pt.stackoverflow.com/questions/219211/qual-a-forma-correta-de-usar-os-tipos-float-double-e-decimal
==========================================================
Decimal Estrutura - Referência
https://learn.microsoft.com/pt-br/dotnet/api/system.decimal?view=net-7.0
==========================================================
[]'s,
Fabio I.
Um time de futebol da Microsoft tem 11,9999999998 jogadores... KKKKKK! Piada velha, mas ainda válida!