在Python中,我們可以使用代碼來判斷一個數是否為質數或者將一個數分解成若干個質數的乘積。
# 判斷一個數是否為質數 def is_prime(n): """ 判斷n是否為質數 """ if n< 2: return False for i in range(2, int(n ** 0.5) + 1): if n % i == 0: return False return True
上面的代碼通過循環枚舉從2到n開根號的所有數,如果n能夠被其中的一個數整除,則n不是質數。否則,n是質數。
# 分解一個數為若干個質數的乘積 def decompose(n): """ 將n分解為若干個質數的乘積 """ result = [] if n< 2: return result i = 2 while i<= n: if n % i == 0: result.append(i) n = n // i else: i += 1 return result
上面的代碼通過循環一次次地從小到大枚舉因子,將n分解成若干個質數的乘積。如果將所有的因子都枚舉完之后,n仍然大于1,那么n就是一個大于sqrt(n)的質數。
使用Python計算質數和分解質因數非常便利,希望本文能夠對大家有所幫助。
上一篇vue cell