SORU
2 AĞUSTOS 2010, PAZARTESİ


Güvenli şamandıra python tamsayı dönüştürmek için yolu?

Python math modülü floor & ceil gibi kullanışlı fonksiyonlar içerir. Bu işlevler, kayan nokta sayısı ve bunun altındaki ve üstündeki en yakın tamsayı döndürür. Ancak bu işlevler, kayan noktalı sayı olarak cevap döner. Örneğin:

import math
f=math.floor(2.3)

Şimdi f verir:

2.0

Nedir bu en güvenli yol almak için bir tamsayı bu şamandıra olmadan çalışan risk yuvarlama hataları (örneğin, eğer şamandıra bu ifade 1.99999) veya belkide ben kullanmak başka bir işlevi tamamen?

CEVAP
2 AĞUSTOS 2010, PAZARTESİ


Kayan noktalı sayılar tarafından temsil edilen tüm tamsayılar tam bir gösterimi var. Güvenle sonucu int kullanabilirsiniz. Hatalı beyan ederse iki güç olmayan bir payda ile rasyonel bir sayıyı temsil etmek için çalıştığınız zaman ortaya çıkar.

Bu işler o kadar önemsiz değildir! Bu özelliği IEEE kayan nokta gösterimi int bütünler kat = ⌊özellikler olmasını sağlarız eğer büyüklüğü sayıda soru yeterince küçük, ama farklı temsilleri vardır mümkünse int(floor(2.3)) olabilir 1.

Wikipedia den alıntı

Mutlak değerden daha az ya da 2'ye eşit olan herhangi bir tamsayı24tam olarak tek duyarlıklı biçimde temsil edilebilir ve herhangi bir mutlak değerden daha az ya da 2'ye eşit olan tamsayı53çift hassas biçimde tam olarak ifade edilebilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Smith

    Bryan Smith

    12 Mart 2006
  • Kim Barbin

    Kim Barbin

    3 Mayıs 2012
  • RobertDuskin

    RobertDuskin

    12 HAZİRAN 2008