Poniższe przykłady przedstawiają "dokładność" metody zaokrąglającej oraz prostą operację dodawania.
double res0 = Math.Round(0.500000000000000000000000000D); //0 double res1 = Math.Round(1.500000000000000000000000000D); //2 double res2 = Math.Round(2.500000000000000000000000000D); //2 double res3 = Math.Round(3.500000000000000000000000000D); //4 double res4 = Math.Round(4.500000000000000000000000000D); //4 double res5 = Math.Round(5.500000000000000000000000000D); //6 double res6 = Math.Round(6.500000000000000000000000000D); //6W komentarzach jest informacja co metoda zwraca.
double d = 0D;
decimal m = 0M;
double growD = 0.1D;
decimal growM = 0.1M;
for (int i = 0; i < 10; i++)
{
d += growD;
m += growM;
Console.WriteLine("double :" + d.ToString("R"));
Console.WriteLine("decimal:" + m.ToString("G"));
Console.WriteLine();
}
A wynik prostego dodawania przedstawiony jest poniżej:
Jak widać na doublach można się mocno przejechać.
Brak komentarzy:
Prześlij komentarz