<reponame>parmalatinter/ai
#!/usr/bin/env python

# 対数
# 参考　https://www.youtube.com/watch?v=iU_X-hPbovo
# 底を何乗(n)したら右上の数になるか
# log[2]8 = n　とおく
# 2 ** n = 8
# n = 3
# よって
# 対数：log[2]8 = 3

import math


# 自然対数
def NaturalLogarithm(num):
    print("自然対数 E", math.log(math.e))
    print("自然対数 Log5", math.log(num))


# 二進対数
def BinaryLogarithm(num):
    print("二進対数（底=2） Log", math.log2(num))


# 常用対数
def CommonLogarithm(num, base):
    print("常用対数（底=10）Log", math.log(num, base))
    print("常用対数（底=10）Log", math.log10(num))

# 指数関数（自然指数関数）
# ネイピア数を底とするものである。単に「指数関数」といった場合にこれを指すこともある。exp(x)
# exp(x)=e**x
def Exp(num):
    print("指数関数（自然指数関数）exp", math.exp(num))

def main():
    CommonLogarithm(5, 10)
    BinaryLogarithm(5)
    NaturalLogarithm(5)
    Exp(5)


if __name__ == "__main__":
    main()
