Python を最も近い 10 に切り上げる

Ammar Ali 2023年6月21日
Python を最も近い 10 に切り上げる

このチュートリアルでは、Python の ceil() 関数を使用して数値を最も近い 10 に丸める方法について説明します。

Python の数値を最も近い 10 に丸めます

Python には、数値を丸めるために使用できる 3つの組み込み関数 round()floor()、および ceil() があります。 ceil() 関数は math モジュールに属し、浮動小数点数を指定された数値以上の最も近い整数に丸めるために使用されます。

浮動小数点数の有効桁数が 0 より大きい場合、数値は 1 増加し、有効桁数が 0 に等しい場合、数値は変わりません。 たとえば、ceil() 関数を使用して浮動小数点数を丸めます。

以下のコードと出力を参照してください。

from math import ceil

n = 2.1
print(ceil(n))

出力:

3

出力から、数値 2.1 は 3 に丸められます。ceil() 関数は浮動小数点数のみを丸めます。

整数を 31 から 40 のように、最も近い 10 の位に丸めたい場合は、最初に数値を 10 で割って浮動小数点に変換する必要があります。次に、それを ceil() 関数に渡します。 結果に 10 を掛けて、必要な数を得ることができます。 たとえば、数値を最も近い 10 に変換してみましょう。

以下のコードと出力を参照してください。

from math import ceil

x = 21
y = ceil(x / 10) * 10
print(y)

出力:

30

上記のコードでは、数値 21 は 30 に丸められます。 math モジュールの floor() 関数は、指定された浮動小数点数を、指定された数値以下の最も近い整数に丸めるために使用されます。

たとえば、上記のコードで ceil() 関数の代わりに floor() 関数を使用すると、結果は 20 になります。 および ceil() 関数を使用して、浮動小数点数を最も近い整数に丸めます。これは、入力数値より小さい、大きい、または等しい場合があります。

関数は、浮動小数点数の最後の有効桁から開始します。 5 より大きい場合は、現在の有効数字が削除され、その前の数字が 1つ増えます。 また、有効桁数が 5 以下の場合、その前の有効桁数は変わりません。

つまり、round() 関数は ceil() 関数として機能します。 有効数字が 5 より大きく、数字が 5 以下の場合、floor() 関数として機能します。

たとえば、単一の浮動小数点数を使用して、これらすべての関数の結果を比較してみましょう。

以下のコードと出力を参照してください。

from math import ceil, floor

x = 21
y = ceil(x / 10) * 10
print(y)

y2 = floor(x / 10) * 10
print(y2)

y3 = round(x / 10) * 10
print(y3)

出力:

30
20
20

上記のコードでは、最初に指定された数値を浮動小数点に変換してから関数内に渡し、その結果に 10 を掛けて最終結果を取得しています。 ceil() 関数と floor() 関数、および Python の math モジュールの詳細については、この リンク を確認してください。

round() 関数の詳細については、この リンク を確認してください。

著者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook