Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonとそのアプリケーションのdivmod()


divmod()は、Pythonの標準ライブラリの一部であり、2つの数値をパラメータとして受け取り、商と除算の余りをタプルとして提供します。これは、数値の除算性のチェックや、数値が素数であるかどうかの確認など、多くの数学アプリケーションで役立ちます。

構文

Syntax: divmod(a, b)
a and b : b divides a
a and b are integers or floats

以下の例では、整数と浮動小数点数の両方の場合を参照してください。 divmod()を適用すると、整数と浮動小数点値を含むことができる結果のタプルが得られます。

# with integers
print("5 and 2 give:",divmod(5,2))
print("25 and 5 give:",divmod(25,5))

# with Floats
print("5.6 and 2 give:",divmod(5.6,2))
print("11.3 and 9.2 give:",divmod(11.3,9.2))

出力

上記のコードを実行すると、次の結果が得られます-

5 and 2 give: (2, 1)
25 and 5 give: (5, 0)
5.6 and 2 give: (2.0, 1.5999999999999996)
11.3 and 9.2 give: (1.0, 2.1000000000000014)

ゼロの使用

最初の引数がゼロの場合、(0,0)を取得します。そして、2番目の引数がゼロの場合、期待どおりにZerodivisionエラーが発生します。

# With first argument as zero
print("0 and 8 give:",divmod(0,8))

# With second argument as zero
print("8 and 0 give:",divmod(8,0))
>

出力

上記のコードを実行すると、次の結果が得られます-

0 and 8 give: (0, 0)
Traceback (most recent call last):
File "xxx.py", line 6, in
print("8 and 0 give:",divmod(8,0))
ZeroDivisionError: integer division or modulo by zero

除算性の確認

除算後のタプルの2番目の値が0の場合、最初の数値は2番目に割り切れると言います。それ以外の場合は分割できません。次の例はこれを示しています。

m = 12
n = 4
quotient,remainder = divmod(m,n)
print(quotient)
print(remainder)
if (remainder==0):
   print(m,' is divisible by ',n)
else:
   print(m,' is not divisible by ',n)

出力

上記のコードを実行すると、次の結果が得られます-

3
0
12 is divisible by 4

数値が素数かどうかの確認

divmod()を使用して、1までの各数値で数値を除算し始めたときに生成されるリマインダーを追跡できます。素数の場合、それ自体以外の数値は除算されないため、余りゼロのカウントは1つだけになります。それは完璧です。余りゼロの数が1より大きい場合、その数は素数ではありません。

num = 11
a = num
# counter the number of remainders with value zero
count = 0
while a != 0:
   q, r = divmod(num, a)
   a -= 1
   if r == 0:
      count += 1
if count > 2:
   print(num, 'is not Prime')
else:
   print(num, 'is Prime')

出力

上記のコードを実行すると、次の結果が得られます-

11 is Prime

  1. PythonでベクトルAを回転させ、それにベクトルCを追加することで、ベクトルBに到達できるかどうかを確認します。

    2D平面に3つのベクトルx、y、zがあるとします。ベクトルxからベクトルyを90度(時計回り)回転させるか、必要に応じて何度でもzを追加して、ベクトルyを取得できるかどうかを確認する必要があります。 したがって、入力がx =(-4、-2)y =(-1、2)z =(-2、-1)のような場合、位置を取得するためにxにzを追加できるため、出力はTrueになります。 (-2、-1)、次に時計回りに90°回転して(-1、2)を取得します。 これを解決するには、次の手順に従います- 関数util()を定義します。これにはp、q、r、sが必要です d:=r * r + s * s dが0

  2. Pythonでの相関と回帰

    相関とは、2つのデータセット間の依存関係を含むいくつかの統計的関係を指します。線形回帰は、従属変数と1つ以上の独立変数の間の関係を確立するための線形アプローチです。単一の独立変数は線形回帰と呼ばれ、複数の独立変数は重回帰と呼ばれます。 相関 依存する現象の簡単な例としては、親と子孫の外見の相関関係、製品の価格と供給量の相関関係などがあります。seabornpythonライブラリで利用可能なアイリスデータセットの例を取り上げます。その中で、3種のアヤメの花のがく片と花びらの長さと幅の相関関係を確立しようとしています。見つかった相関関係に基づいて、ある種を別の種から簡単に区別する強力なモデルを作