题目1:
找出(2,50)中所有的质数。
# print all prime numbers from (2,50)
num=50
list=[]
for i in range(2,num):
prime=1
for j in range(2, i):
if np.mod(i, j) == 0:
prime=0
break
if prime==1:
list.append(i)
print(list)
题目2:
将任意给定的正整数进行质因数分解
num=100
list=[] #all prime numbers from (2,num)
for i in range(2,num):
prime=1
for j in range(2, i):
if np.mod(i, j) == 0:
prime=0
break
if prime==1:
list.append(i)
print(list)
list1=[]#质因数分解的集合
for ele in list:
if np.mod(num,ele)==0: #存在某个质因数
list1.append(ele)
num=num/ele
while num%ele==0: #质因数分解时,某个质因数的次幂
list1.append(ele)
num=num/ele
print(list1)