簡體   English   中英

Python - 列出從 1 到 1000 的質數,包括 1

[英]Python - listing prime numbers from 1 to 1000 including 1

該程序用於列出 1 到 1000 之間的所有質數,但我的老師希望我在結果中包含 1。

我試圖改變它說if num >= 1: and for i in range(1,num) ,但是當我運行它時,唯一的結果是1 is a prime number! . 謝謝!

for num in range(1,1001):
   if num > 1:
       for i in range(2,num):
           if (num % i) == 0:
               break
       else:
           print(num,"is a prime number!")

您不應該for i in range(1, num):書寫,因為(any number) % 1 == 0 if num >= 1:也可以刪除,因為它始終為true。

嘗試以下代碼:

for num in range(1, 1001):
    for i in range(2, num):
        if num % i == 0:
            break
    else:
        print num, 'is a prime number'

從技術上講,請記住1不是質數。

將您的代碼保持不變,並保留在main for循環上方:

print("1 is a prime number")
a = int(input("enter the start number"))
b = int(input("enter the end number"))
for i in range(a,b+1):
    if i > 1:
        for j in range(2,i):
            if i % j == 0:
                break
        else:
            print(i,"is a prime number")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM