4 Ocak 2015 Pazar

C# ile Virgülden Sonraki Basamak Sayısını Belirleme

 C# da virgüllü sayılarla işlem yaparken vürgülden sonra belli sayıda basamak göstermek isterseniz aşağıdaki kod satırını kullanmalısınız.
double miktar = 456.1234;
string sonuc = miktar.ToString("0.##");

//Sonuç: 456.12
Yukarıdaki kod bloğu virgülden sonra 2 basamak gösterir. Bunu ("0.##"); satırındaki kod ile sağlıyoruz. Eğer daha fazla basamak göstermek isterseniz # karakter sayısını arttırmalısınız.

6 yorum:

  1. Kusura bakmayın ama sanki çocuklara anlatıyor gibi yazmışsınız. Birçok yerde 0 'lar da kullanılıyor. Onlarla olmaz mı yani? Neden #? Bunu bari belirtseydiniz.

    Mesela kullanıcı 5 girdiği zaman sonuç 5,00 olarak mı çıkacak yoksa direk 5 mi yazacak?
    Ya da yuvarlayacak mı?

    Neyse...

    YanıtlaSil
  2. Bu yorum yazar tarafından silindi.

    YanıtlaSil
  3. double miktar = 456.1234;
    string sonuc = miktar.ToString("0.##");

    vermiş olduğun cevap yanlış sayının orjinalini bozuyor ve verdiğin örnek kod sayıyı yuvarlamak için kullanılıyor. Örnek olarak 0.356 sayısını deniyebilirsiniz. Kodu kendi local test edip yaz cevap olarak milleti yanlış yönlendirme

    YanıtlaSil
  4. Bu yorum yazar tarafından silindi.

    YanıtlaSil
  5. virgülden sonra 1 basamak için: 0.1
    virgülden sonra 2 basamak için: 0.01
    virgülden sonra 3 basamak için: 0.001
    .. . ........

    decimal sayi1 = 0.3567M;

    decimal sayi2 = sayi1 - (sayi1 % 0.1M); //sayi2 = 0.3
    decimal sayi3 = sayi1 - (sayi1 % 0.01M); //sayi3 = 0.35
    decimal sayi4 = sayi1 - (sayi1 % 0.001M); //sayi4 = 0.356

    Sayının orjinalini bozmadan bu şekilde virgülden sonra belli sayıda basamak gösterebilirsiniz.

    YanıtlaSil