«floating-point» etiketlenmiş sorular

Kayan nokta sayıları, tamsayılardan daha büyük aralıkları temsil edebilen, ancak daha düşük kesinlik pahasına aynı miktarda bellek kullanan gerçek sayıların yaklaşıklarıdır. Sorunuz küçük aritmetik hatalar (örn. Neden 0.2 + 0.1, 0.300000001'e eşittir?) Veya ondalık dönüştürme hatalarıyla ilgili ise, göndermeden önce lütfen aşağıda verilen "bilgi" sayfasını okuyun.


7
C ++ uyarısı: çiftin sıfıra bölünmesi
Dava 1: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0.0)<<std::endl; } Herhangi bir uyarı ve baskı olmadan derlenir inf. Tamam, C ++ sıfıra bölmeyi işleyebilir ( canlı görün ). Fakat, Durum 2: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0)<<std::endl; } Derleyici aşağıdaki uyarıyı verir ( …

18
Python'da float'ların kolay ve hoş baskısı?
Bir şamandıra listem var. Basitçe yaparsam print, şöyle görünür: [9.0, 0.052999999999999999, 0.032575399999999997, 0.010892799999999999, 0.055702500000000002, 0.079330300000000006] Listede gezinmek için print "%.2f"bir fordöngü gerektirecek olan kullanabilirdim , ancak o zaman daha karmaşık veri yapıları için işe yaramazdı. Gibi bir şey istiyorum (bunu tamamen uyduruyorum) >>> import print_options >>> print_options.set_float_precision(2) >>> print [9.0, …

10
Hassasiyeti kaybetmeden şamandırayı ikiye dönüştürün
İlkel bir şamandıram var ve ilkel bir çift olarak ihtiyacım var. Şamandırayı ikiye katlamak bana garip bir ekstra hassasiyet veriyor. Örneğin: float temp = 14009.35F; System.out.println(Float.toString(temp)); // Prints 14009.35 System.out.println(Double.toString((double)temp)); // Prints 14009.349609375 Bununla birlikte, döküm yerine, float'ı bir dizge olarak çıktısı alırsam ve dizeyi bir çift olarak ayrıştırırsam, istediğimi …

8
Herhangi bir JVM'nin JIT derleyicileri, vektörleştirilmiş kayan nokta komutlarını kullanan kod üretir mi?
Diyelim ki Java programımın darboğazı, bir grup vektör nokta ürününü hesaplamak için bazı sıkı döngüler. Evet profili çıkardım, evet bu darboğaz, evet önemli, evet algoritma böyle, evet, bayt kodunu optimize etmek için Proguard çalıştırdım, vb. Esas olarak iş, nokta ürünlerdir. İçinde olduğu gibi, iki tane var float[50]ve ikili ürünlerin toplamını …

6
0.0 ile 1.0 arasında kaç tane çift sayı vardır?
Bu yıllardır aklımda olan bir şey ama daha önce sormaya hiç zaman ayırmadım. Birçok (sözde) rasgele sayı üreteci, 0.0 ile 1.0 arasında rasgele bir sayı üretir. Matematiksel olarak bu aralıkta sonsuz sayılar vardır, ancak doublebir kayan nokta sayısıdır ve bu nedenle sonlu bir kesinliğe sahiptir. Yani sorular: double0.0 ile 1.0 …







2
Bu kayan nokta optimizasyonuna izin veriliyor mu?
floatBüyük tam sayıları tam olarak temsil etme yeteneğini nerede kaybettiğini kontrol etmeye çalıştım . Ben de bu küçük pasajı yazdım: int main() { for (int i=0; ; i++) { if ((float)i!=i) { return i; } } } Bu kod clang dışında tüm derleyicilerde çalışıyor gibi görünüyor. Clang, basit bir sonsuz …


4
1.0'a en yakın çift nedir, bu 1.0 değil mi?
1.0'a en yakın olan, ancak aslında 1.0 olmayan iki katını programlı olarak elde etmenin bir yolu var mı? Bunu yapmanın bir hileli yolu, iki katı aynı büyüklükte bir tamsayıya hatırlamak ve sonra bir çıkarmaktır. IEEE754 kayan nokta biçimlerinin çalışma şekli, bu, kesirli bölümü tüm sıfırlardan (1.000000000000) hepsine (1.111111111111) değiştirirken üssün …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.