Python 3 で数学を。

Python 3 とライブラリで数学の問題を解いていきます。統計学や機械学習はときどき。

素因数分解。(Python3, NumPy: randint(), SymPy: factorint(), pprint())

使用するライブラリ

NumPy

SymPy

Python 3 コード

prime_factorization.py

#!/usr/bin/env python3


"""(docstring)
"""


import numpy as np
import sympy as sym


def prime_factorization():
    """(docstring)
    """
    for i in range(1, 11):
        print('({}).\n'.format(i))
        random_integer = np.random.randint(1, 100, 1)
        print('int: {}: '.format(*random_integer), end='')
        sym.pprint(sym.factorint(random_integer))
        print('')
        print('-'*79)


if __name__ == '__main__':
    prime_factorization()

出力

$ python3 prime_factorization.py
(1).

int: 89: {89: 1}

-------------------------------------------------------------------------------
(2).

int: 4: {2: 2}

-------------------------------------------------------------------------------
(3).

int: 3: {3: 1}

-------------------------------------------------------------------------------
(4).

int: 9: {3: 2}

-------------------------------------------------------------------------------
(5).

int: 71: {71: 1}

-------------------------------------------------------------------------------
(6).

int: 85: {5: 1, 17: 1}

-------------------------------------------------------------------------------
(7).

int: 94: {2: 1, 47: 1}

-------------------------------------------------------------------------------
(8).

int: 32: {2: 5}

-------------------------------------------------------------------------------
(9).

int: 27: {3: 3}

-------------------------------------------------------------------------------
(10).

int: 88: {2: 3, 11: 1}

-------------------------------------------------------------------------------

参考文献 (数式を参考)

チャート式体系数学2代数編―中高一貫教育をサポートする

チャート式体系数学2代数編―中高一貫教育をサポートする