Decimal.Floor(Decimal) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen Decimal sayıyı negatif sonsuzluğa doğru en yakın tamsayıya yuvarlar.
public:
static System::Decimal Floor(System::Decimal d);
public:
static System::Decimal Floor(System::Decimal d) = System::Numerics::IFloatingPoint<System::Decimal>::Floor;
public static decimal Floor (decimal d);
static member Floor : decimal -> decimal
Public Shared Function Floor (d As Decimal) As Decimal
Parametreler
- d
- Decimal
Yuvarlanacak değer.
Döndürülenler
Kesirli bir parça varsa d
, negatif sonsuzluğa doğru bir sonraki tamsayı Decimal değerinden d
küçüktür.
-veya-
Kesirli bir bölüm yoksa d
, d
değiştirilmeden döndürülür. yönteminin türünde Decimalbir tam sayı değeri döndürdüğünü unutmayın.
Uygulamalar
Örnekler
Aşağıdaki örnek yöntemini gösterir Floor ve yöntemiyle karşıtlık Ceiling sağlar.
using System;
public class Example
{
public static void Main()
{
decimal[] values = {12.6m, 12.1m, 9.5m, 8.16m, .1m, -.1m, -1.1m,
-1.9m, -3.9m};
Console.WriteLine("{0,-8} {1,10} {2,10}\n",
"Value", "Ceiling", "Floor");
foreach (decimal value in values)
Console.WriteLine("{0,-8} {1,10} {2,10}", value,
Decimal.Ceiling(value), Decimal.Floor(value));
}
}
// The example displays the following output:
// Value Ceiling Floor
//
// 12.6 13 12
// 12.1 13 12
// 9.5 10 9
// 8.16 9 8
// 0.1 1 0
// -0.1 0 -1
// -1.1 -1 -2
// -1.9 -1 -2
// -3.9 -3 -4
open System
let values =
[ 12.6m; 12.1m; 9.5m; 8.16m; 0.1m; -0.1m; -1.1m; -1.9m; -3.9m ]
printfn "%-8s %10s %10s\n" "Value" "Ceiling" "Floor"
for value in values do
printfn $"%-8O{value} %10O{Decimal.Ceiling value} %10O{Decimal.Floor value}"
// The example displays the following output:
// Value Ceiling Floor
//
// 12.6 13 12
// 12.1 13 12
// 9.5 10 9
// 8.16 9 8
// 0.1 1 0
// -0.1 0 -1
// -1.1 -1 -2
// -1.9 -1 -2
// -3.9 -3 -4
Module Example
Public Sub Main()
Dim values() As Decimal = {12.6d, 12.1d, 9.5d, 8.16d, .1d, -.1d,
-1.1d, -1.9d, -3.9d}
Console.WriteLine("{0,-8} {1,10} {2,10}",
"Value", "Ceiling", "Floor")
Console.WriteLine()
For Each value As Decimal In values
Console.WriteLine("{0,-8} {1,10} {2,10}", value,
Decimal.Ceiling(value), Decimal.Floor(value))
Next
End Sub
End Module
' The example displays the following output:
' Value Ceiling Floor
'
' 12.6 13 12
' 12.1 13 12
' 9.5 10 9
' 8.16 9 8
' 0.1 1 0
' -0.1 0 -1
' -1.1 -1 -2
' -1.9 -1 -2
' -3.9 -3 -4
Açıklamalar
Bu yöntemin davranışı IEEE Standard 754, Bölüm 4'e göredir. Bu tür yuvarlamaya bazen eksi sonsuza doğru yuvarlama denir. Başka bir deyişle, pozitifse d
, kesirli bileşenler kesilir. Negatifse d
, herhangi bir kesirli bileşenin varlığı, daha küçük tamsayıya yuvarlanmasını neden olur. Bu yöntemin çalışması, pozitif sonsuzluğa yuvarlama işlemini destekleyen yöntemden Ceiling farklıdır.