Decimal Değişkenler
C# Programlama Dilleri

Decimal Değişkenler

Decimal (desimal diye okunur) değişkenler ondalıklı değerler de dahil olmak üzere çok büyük sayısal değerleri saklayabildiğimiz değişkenlerdir.

 

Konunun video anlatımı için aşağıdaki resme tıklayınız.

 

Decimal değişkenler -1.0 x 1028 ile +7.9228 x 1028 arasında yaklaşık 29 basamaklık ondalıklı sayı değerler saklayabilirler. Varsayılan değer ise genelde olduğu gibi sıfırdır. Basamak sayısı oldukça fazla olduğu için finansal veriler gibi hassas değerleri taşımak için çok uygun bir değişken türüdür.

Bu değişkenler +79228162514264337593543950335 ile  -79228162514264337593543950335 aralığında değerler saklayabilirler.

Her bir decimal değer bilgisayar hafızasında 16 byte alan işgal ederler.

Sayısal değişkenlerin sonuna M veya m harfi yazılarak değer decimale çevrilir.

Uygun her türlü değer Convert.ToDecimal() metoduyla decimale çevirilebilir.

Örnek:

decimal d = Convert.ToDecimal(textBox1.Text);

 

String bir değer decimal.Parse() metodu ile decimale çevirilebilir.

Örnek:

decimal d = decimal.Parse(textBox1.Text);

 

Decimal değişken türü C# dilinin desteklediği en büyük sayısal tür olduğu için bu tür değişkenlerde saklanan değerler başka değişken ya da propertilere aktarılacağında tür değişikliği (convert) işlemi yapılmalıdır. Bunun için Convert statik sınıfının metodları veya dönüştürülecek basit değişken türlerinin (struct) parse metodları kullanılabilir.

Örnek:

decimal dc = 5;

string s1 = Convert.ToString(dc);

string s2 = dc.ToString();

double db = Convert.ToDouble(dc);

 

Byte, char, int gibi tamsayı türden değer ve değişkenlerden decimal tür değişkenlere değer aktarılırken tür değişikliği gerekmez.

Örnekler:

byte b = 5;
char c = ‘a’;
int i=7;
decimal dc;

dc = b; //byte
dc = c; //char
dc = i; //int
dc = ‘A’; //char
dc=3; //int

 

Double (d/D) ve float(f/F) türü sayısal değer veya değişkenlerden decimal değişkenlere değer aktarılacağında tür değişimi gerekir.

Örnekler:

double db= 12.34;
float f = 56.78;
decimal d;

DİKKAT! Yukarıda tanımlanmış olan double (db), float (f) ve decimal (dc) değişkenler için aşağıdaki satırlar ise derleme hatası verirler:

dc = db;
dc = f;
dc = 12.34;
dc = 12.34d;
dc = 12.34f;

Bunun yerine aşağıdaki komutlar kullanılmalıdır:

dc = Convert.ToDecimal(db);
dc = Convert.ToDecimale(f);
dc = Convert.ToDecimal(12.34);
dc = Convert.ToDecimal(12.34d);
dc = Convert.ToDecimal(12.34f);

 

 

 

C# türü/anahtar sözcüğü Yaklaşık Aralık Duyarlık Boyut .NET türü
float ± 1,5 x 10− 45 ila ± 3,4 x 1038 ~ 6-9 basamak 4 bayt System.Single
double ± 5,0 × 10− 324 ila ± 1,7 × 10308 ~ 15-17 basamak 8 bayt System.Double
decimal ± 1,0 x 10-28 ila ± 7,9228 x 1028 ~ 28-29 basamak 16 bayt System.Decimal

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.