Tavsiye, 2024

Editörün Seçimi

Float ve Double Arasındaki Fark

Float ve Double, kayan nokta tipinin altındaki veri tipleridir. Kayan nokta sayıları, içinde kesirli bir bileşeni olan gerçek sayılardır. Şamandıra ve çift arasındaki birincil fark, şamandıra türünün 32 bit depoya sahip olmasıdır. Öte yandan, çift tip 64 bit depolama alanına sahiptir. Şamandıra ve ikili arasında aşağıda verilen karşılaştırma tablosunda tartışılan başka bazı farklılıklar vardır.

Karşılaştırma Tablosu:

Karşılaştırma için temelşamandıraÇift
HassasTek hassasiyet.Çift hassasiyetli.
Uçları32 bit.64 bit.
Bayt4 bayt .8 bayt.
Yaklaşık Aralığı1.4e-045 ila 3.4e + 0384.9e-324 ila 1.8e + 308
Bit Temsili1 bit, işaret bitini temsil eder.
8 bit üsteli temsil eder.
23 bit, mantissa temsil eder.
1 bit, işaret bitini temsil eder.
11 bit üsteli temsil eder.
52 bit mantisi temsil eder.
doğrulukDaha az doğru.Daha kesin.

Float'un tanımı

Bir veri türü şamandırası kayan nokta türlerinden biridir. Veri türü şamandırası, şamandıra tipi değişkeni için 32 bit depolamaya (4 bayta eşittir) sahiptir. Veri türü float, tek bir kesinliği belirtir. Şamandırada 32 bitin gösterimi, 1 bit işaret biti olarak, 8 bit bir üs olarak, 23 bit ise mantis olarak gösterilebilir. Bir şamandıra tipinin maksimum aralığı 1.4e-045 ila 3.4e + 038'dir. Matematiksel hesaplama yapılırken çift kayan nokta tipi ile karşılaştırıldığında float tipi daha az doğrudur. Örnek kullanarak şamandırayı anlayalım.

 #include #include int main () {float num1 = sqrt (64.23) cout << num1; } // çıkış 8.00060 

Yukarıdaki kodda olduğu gibi, bir kayan değişkene num1 değişkenine, bu işleve iletilen değerin karekökünü döndüren sqrt () işlevine ait bir değer atandığını görebilirsiniz. Num1'deki değer yazdırıldığında kesin değere yakın olduğunu ancak doğru olmadığını gözlemleyebilirsiniz. Şimdi, aynı program veri türü olarak çift kullanılarak yürütüldüğünde aşağıdaki örneği görelim.

Double'un tanımı

Çift, ikinci tür kayan nokta veri tipidir. Bir veri türü çift, bir çift tür değişkeni için 64 bit depolamaya (8 bayta eşittir) sahiptir. Şamandıranın sadece iki katı olması nedeniyle çift hassasiyetini belirtir. 64 bit tipinin çift temsili gösterimi, 1 bit işaret biti temsil ederken, 11 bit bir üs ifade eder ve kalan 52 bit ise mantisi temsil eder olarak açıklanabilir. Şamandıralar ve çiftler arasında en sık kullanılan veri tipi çifttir. Double tipi matematiksel hesaplama sırasında ve mükemmel bir hassasiyet gerektiğinde kullanılır. Sin (), cos () ve sqrt () matematiksel işlevleri her zaman çift değer döndürür. Veri türünün doğruluğunu bir örnekle ikiye katlayalım.

 #include #include int main () {çift num1 = sqrt (64.23) cout << num1; } // çıkış 8.0143621 

Örnekte elde edilen çıktının, şamandırayı açıklamak, örnekte elde edilen çıktıdan iki katı açıklamaktan farklı olduğunu gözlemleyebilirsiniz. Bundan, iki katından elde edilen sonuçların, yüzmeye kıyasla daha doğru olduğunu söyleyebiliriz.

Şamandıra ve Çift arasındaki Temel Farklar

  1. Veri türü şamandırası tekli doğruluğu belirtir, yani çiftle karşılaştırıldığında daha az kesinliğe sahiptir, çift ise sadece şamandıranın iki katı olduğu için çift duyarlığı belirtir, hatası şamandıra ile karşılaştırıldığında önemsizdir.
  2. Float tipinin bir değişkeni 32 bit depolamaya sahipken, çift tipli bir değişkenin float ile karşılaştırıldığında depolamanın iki katının daha büyük olduğunu derleyen 64 bitlik bir depolaması vardır.
  3. Floattaki değer 1.4e-045 ile 3.4e + 038 arasında değişebilirken, double tip değeri 4.9e-324 ile 1.8e + 308 arasında değişebilir.
  4. Bir şamandıra değerinin bit gösterimi, şarkı biti için 1 bit şamandıra, üs için 8 bit ve mantis depolamak için 23 bitin kullanılmasına benzer. Öte yandan, çifte bir değer, şarkı biti için 1 bit, üs için 11 bit ve mantis depolamak için 52 bit kullanılır.
  5. Çift şamandıra ile karşılaştırıldığında daha az doğrudur, bu nedenle matematiksel hesaplama çift kullanılır.

Sonuç:

Genelde çift motor kullanmanız gerekir, çünkü çoğu zaman ana motorumuz olan doğruluğu sağlar.

Top