首先,我是初學者,英語說得不是很好,所以歡迎大家對我想說的內容提出任何問題。我正在制作一個接收兩個數字的 python 程式,該程式顯示了它們之間的質數。
該演算法獲取這些數字,將它們變成一個串列,然后將該串列中的每個數字除以它的每個前身。然后將每個整數除法傳遞給另一個串列,以查看傳遞給另一個串列的數字中哪些是素數。
一旦傳遞到第二個串列,素數就是那些在該串列中不重復的數字,也就是說,當洗掉所有重復的值時,我有一個素數串列,但在某些值中,該函式根本不起作用。我想明白為什么。提前致謝!
請遵循以下代碼:
def Find_Primes(smaller_num, bigger_num):
array = list(range(smaller_num, (bigger_num 1)))
array2 = []
for i in array:
for j in range(1, i):
if i % j == 0:
array2.append(i)
for num in array2:
if array2.count(num) > 1:
while num in arrayt2:
arrayt2.remove(num)
print(array2)
smaller_number = int(input('Text the smaller number of interval: '))
bigger_number = int(input('Text the other number of interval: '))
Find_Primes(smaller_number, bigger_number)
uj5u.com熱心網友回復:
def find_primes(smaller_num, bigger_num):
# empty list to hold list of prime numbers
lst_of_primes = []
# loop to go through numbers in the range
for number in range(smaller_num, bigger_num):
# variable to hold the count of factors
factors = 0
# loop to test possible factors for the number
for test_num in range(2, number):
# if integer division leaves no remainder
if number % test_num == 0:
# increment factors variable
factors = 1
# number has no factors
if factors == 0:
# add it to the list of prime numbers
lst_of_primes.append(number)
# output the final list
print(lst_of_primes)
smaller_number = int(input('Enter the smaller number of interval: '))
bigger_number = int(input('Enter the larger number of interval: '))
find_primes(smaller_number, bigger_number)
uj5u.com熱心網友回復:
如果(可能?)數字,您正在將乘以數字添加i到jarray2 j。查看輸出。
def Find_Primes(smaller_num, bigger_num):
array = list(range(smaller_num, (bigger_num 1)))
array2 = []
for i in array:
#numbers from input
for j in range(1, i):
if i % j == 0:
array2.append(i)
print(array2)
print("\n")
for num in array2:
if array2.count(num) > 1:
while num in array2:
array2.remove(num)
print(array2)
smaller_number = 1
bigger_number = 15
Find_Primes(smaller_number, bigger_number)
輸出:
[2, 3, 4, 4, 5, 6, 6, 6, 7, 8, 8, 8, 9, 9, 10, 10, 10, 11, 12, 12, 12, 12, 12, 13, 14, 14, 14, 15, 15, 15]
[2, 3, 5, 7, 11, 13, 15, 15, 15]
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/534446.html
標籤:Python素数
上一篇:pandas中的str.slice命令無法選擇所需的字串部分
下一篇:庫和模塊問題-Python初學者
