Python– category –
-
Python
1/81が0.0123456790・・・というように循環する理由
1/81を計算すると、0.0123456790123456790・・・と123456790が無限に循環することになります。from decimal import *getcontext().prec = 46print(f"{Decimal('1')/Decimal('81'):>30.46f}")0.0123456790123456790123456790... -
Python
Pythonの再帰関数で漸化式の計算する
【単純な漸化式】次のように定義される数式{a_n}の一般項を求めます。$a_1=1, a_{n+1}=a_n+4$漸化式を解くと一般項は次の通りです。$a_n=4n-3$これをPythonの再帰関数と一般項の式を使って、n=1から5まで計算し比較します。。def recurrence(n): ... -
Python
Pythonで円周率を計算する~最も素朴な方法
円周率を計算するのに、とりあえず頭に浮かぶ最も素朴な方法で計算します。まず、半径1の4分円の面積を求めるます。$x$の範囲である0から1を10等分し、0.0から0.9までの値を考えます。それぞれについて円の方程式から、yの値を計算します。円の方程式 $x^... -
Python
群数列をPythonで作成する
1から順に奇数を並べて、次の通り数字の小さい方から順に1個、3個、5個、・・・となるように郡に分け、順に第1群、第2群、第3群・・・第n群とします。1 | 3 5 7 | 9 11 13 15 17 | 19 ・・・・このとき、第n群の最初の数は$2n^2-4n+3$、最後... -
Python
Pythonでゴールドバッハ予測の計算をする
Pythonで1000までの正の整数についてゴールドバッハ予想の検証をしてみました。ゴールドバッハ予想は次のことをいいます。4以上の全ての偶数は、二つの素数の和で表すことができる。6以上の全ての偶数は、二つの奇素数の和で表すことができる。現在、$4 × ... -
Python
decimalモジュールを使った小数点の計算
Pythonでは小数点の計算が思っていたのとは異なることを書きました。Pythonでの小数点の表示がおかしいこれに対して、decimalモジュールのDecimal関数を使うと上手くいきます。import decimalprint(decimal.Decimal(0.1))print(decimal.Decimal(0.1) + dec... -
Python
Pythonでの小数点の表示がおかしい
pythonで小数点の計算をしていると・・・Pythonで小数点の計算をするとおかしなことが起こります。print(0.1)print(0.1+0.1)print(0.1+0.1+0.1)0.10.20.300000000000000040.1を2回までは良いですが、3回足し合わせると妙なことが起こります。print(0.1*3)p... -
Python
SymPyで数式の大小を比較する
SymPyでは数式に関しても大小の比較をしてくれますが、細かく見ていくとかなり配慮が必要です。数式に値を代入して、数字として大小を比較するSymPyで変数を定義し、変数に具体的な数値を代入した後、その計算結果を比較します。比較にはEq関数を使います... -
Python
SymPyで三角関数の加法定理を確認する
SymPyで三角関数の演算の公式を確認します。三角関数の加算sinの角の加算の計算をします。expandは式の展開をしますが、そのときtrig=Trueと指定することにより、加算公式の計算をすることができます。import sympysympy.var('alpha beta')sp=symp... -
Python
SymPyで三角関数の基本的な演算をする
SymPyモジュールを使うと、数値だけでなく代数的にも三角関数の演算をすることができます。使いようによってはとてつもないことができそうです。負角の計算(Negative angles)まずは、小手調べに負角からです。display(sympy.sin(-theta))display(sympy.cos...