Python'daki en yakın tamsayı işlevi
Python ve yuvarlama
Python matematik kütüphanesi, ondalık sayıları tamsayılara yuvarlamak için kullanışlı yöntemler paketi sunar. Geleneksel olarak bir sayıyı "yuvarlak ()" yöntemini kullanarak 0, 4 veya daha küçük olan kısımlarda en yakın küçük tamsayıya ve 0, 5 veya daha fazla parçanın en büyüğüne kadar) döndürebilirsiniz. Aşağıdaki örnek, "yuvarlak" yöntemini kullanarak ondalık sayıların nasıl döndürüleceğini gösterir:
f = 5.455 round (f) 5.0 yuvarla (f, 2) // yuvarlar 2 decimals 5.46
Çatı ve zemin yöntemleri
Matematik kütüphanesinin bir parçası olarak, "floor ()" ve "ceil ()" yöntemleri, belirli hesaplamalarda yararlı bulabileceğiniz ondalık basamakları yuvarlamak için benzersiz bir yol sağlar. Toprak metodu, negatif sonsuzluğa en yakın küçük tamsayıya (ondalık değere bakılmaksızın) yuvarlanır ve çatı yöntemi, onu pozitif sonsuzluğa en yakın tam sayıya yuvarlar. Aşağıdaki örnek, iki işlevin nasıl çalıştığını gösterir:
ithalat matematik f = 3.5 g = -3, 5 kat (f) 3.0 tavan (3.5) 4.0 kat (g) -4.0 tavan (g) -3.0
Yuvarlama ve bütün
Resimli yuvarlama işlemleri, bu işlevlerin nasıl kullanılacağını gösterir, ancak bunların yan etkileri de vardır: 3.0'dan önceki Python sürümlerinde, yuvarlatılmış ondalıklıklar tamsayılara değil ondalıklara yuvarlanmamıştır. Bilgisayar mimarilerindeki ondalıkları temsil etme yolu nedeniyle, programcıların tamsayılara ihtiyaç duyduğu yüksek hassasiyetli hesaplamalarda sorunlara neden olabilir. Bu örnekteki gibi, "int ()" yöntemini kullanarak bir kayan sayıyı tam sayıya dönüştürebilirsiniz:
f = 3, 5 round (f) 4, 0 int (yuvarlak (f)) 4
Örnek yöntem
Bu bilgiyi kullanarak, ondalık sayıları tamsayılara kolayca yuvarlamak için bir yöntem geliştirebilirsiniz. Aşağıdaki örnekler, bir sayının çatı ve tabanını tamsayı olarak belirleyen yöntemlerin kısa örneklerini ve kullanıcı tarafından seçilen bir ondalık basamağa yuvarlanan (veya bir tamsayı) örneklerin kısa örneklerini gösterir:
import math def integerfloor (x):. . . int dönüşü (zemin (x)) def tamsayıCeiling (x):. . . int (ceil (x)) döndürme yuvarlama (x, dec):. . . dec == 0 ise:. . . int dönüşü (yuvarlak (x)). . . Başka. . . dönüş (yuvarlak (x, dec))