Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
Ez a cikk kiegészítő megjegyzéseket tartalmaz az API referenciadokumentációjához.
Használja az MidpointRounding enumerálást a megfelelő Math.Round, MathF.Round és Decimal.Round túlterhelésekkel, hogy biztosítsa a kerekítési folyamat jobb irányítását.
Két általános kerekítési stratégia létezik – a legközelebbi egészre és az irányított kerekítés –, és mindegyik enumerációs mező pontosan egy ilyen stratégiában vesz részt.
Kerekítés a legközelebbi értékre
Mezők:
A kerekítés a legközelebbi művelethez implicit vagy meghatározott pontosságú eredeti számot vesz fel; megvizsgálja a következő számjegyet, amely ezen a pontosságon plusz egy; és a legközelebbi számot adja vissza ugyanolyan pontossággal, mint az eredeti szám. Pozitív számok esetén, ha a következő számjegy 0 és 4 között van, a legközelebbi szám a negatív végtelen felé tart. Ha a következő számjegy 6 és 9 között van, a legközelebbi szám a pozitív végtelen felé tart. Negatív számok esetén, ha a következő számjegy 0 és 4 között van, a legközelebbi szám a pozitív végtelen felé tart. Ha a következő számjegy 6 és 9 között van, a legközelebbi szám a negatív végtelen felé tart.
Ha a következő számjegy 0–4 vagy 6–9 között van, akkor a MidpointRounding.AwayFromZeroMidpointRounding.ToEven kerekítési művelet eredményét nem befolyásolja. Ha azonban a következő számjegy 5, amely két lehetséges eredmény közötti középpont, és az összes többi számjegy nulla, vagy nincsenek még számjegyek, a legközelebbi szám nem egyértelmű. Ebben az esetben a kerekítési módok MidpointRounding lehetővé teszik annak megadását, hogy a kerekítési művelet a nullától legtávolabb eső legközelebbi számot vagy a legközelebbi páros számot adja eredményül.
Az alábbi táblázat néhány negatív és pozitív szám kerekítésének eredményeit mutatja be a legközelebbi egész számhoz való kerekítés módjaival együtt. A számok kerekítéséhez használt pontosság nulla, ami azt jelenti, hogy a tizedesvessző utáni szám hatással van a kerekítési műveletre. A -2,5 számnál például a tizedesvessző utáni számjegy 5. Mivel ez a számjegy a középpont, a kerekítés eredményét egy MidpointRounding érték használatával határozhatja meg. Ha meg van adva AwayFromZero, a -3 érték kerül visszaadásra, mert ez a legközelebbi szám a nullához nulla pontosság mellett. Ha a ToEven meg van adva, a -2 kerül visszaadásra, mert ez a legközelebbi páros szám nulla tizedesértékkel.
| Eredeti szám | AwayFromZero | ToEven |
|---|---|---|
| 3,5 | 4 | 4 |
| 2.8 | 3 | 3 |
| 2,5 | 3 | 2 |
| 2.1 | 2 | 2 |
| -2.1 | -2 | -2 |
| -2.5 | -3 | -2 |
| -2.8 | -3 | -3 |
| -3.5 | -4 | -4 |
Irányított kerekítés
Mezők:
Az irányított kerekítési művelet implicit vagy meghatározott pontosságú eredeti számot vesz fel, és a legközelebbi számot egy adott irányban adja vissza, ugyanolyan pontossággal, mint az eredeti szám. Irányított módok MidpointRounding, amelyek meghatározzák, hogy egy előre definiált szám felé végezze a kerekítést.
Az alábbi táblázat néhány negatív és pozitív szám kerekítésének eredményeit mutatja be az irányított kerekítési módokkal együtt. A számok kerekítéséhez használt pontosság nulla, ami azt jelenti, hogy a tizedesvessző előtti számot befolyásolja a kerekítési művelet.
| Eredeti szám | ToNegativeInfinity | ToPositiveInfinity | ToZero |
|---|---|---|---|
| 3,5 | 3 | 4 | 3 |
| 2.8 | 2 | 3 | 2 |
| 2,5 | 2 | 3 | 2 |
| 2.1 | 2 | 3 | 2 |
| -2.1 | -3 | -2 | -2 |
| -2.5 | -3 | -2 | -2 |
| -2.8 | -3 | -2 | -2 |
| -3.5 | -4 | -3 | -3 |