Zbyt dokładne zaokrąglenie wyniku double

0

Co tu dużo mówić, poniżej uproszczenie mojego problemu :

private void button1_Click(object sender, EventArgs e)
        {
            double x = 139;
            double y = 130.60;
            double suma = x - y;
            MessageBox.Show(suma.ToString());
        } 

Wynik działania tego kawałku kodu to : 8,40000000000001
Mianowicie chodzi mi aby ten wynik to było zwyczajne 8,4 a nie taka precyzja ? Czemu tak i jak się tego pozbyć ?

1
suma.ToString("0.##");
0

Oke działa, a jakieś małe objaśnienie tego zapisu :) ? I jeszcze jedno pytanie czy nie da się jakoś ogólnie tego zastosować a nie tylko dla konkretnego wyniku ?

1

Daj panu plusika. Dwa hashe w "0.##": dwie liczby po przecinku

1 użytkowników online, w tym zalogowanych: 0, gości: 1