Python - 让用户输入 10 个数字,然后只显示素数

新手上路,请多包涵

如果可能的话,我需要你的帮助。我是 Python 的新手,但我对 C#、java 有很好的理解,现在已经开始学习 python 作为我学习计划的一部分。我被困在我的一项任务中,我无法得到任何帮助,因为我认识的人都没有使用 python。

我的任务是:“从给定的 10 个数字列表中找到素数。用户应输入 10 个数字”有人可以帮我吗?提前致谢

原文由 Oskar Rodziewicz 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 679
2 个回答

非常简单,我根据您的要求为您制作了这个程序,即用户必须输入 10 个数字,程序会发现它是否为质数。

尝试这个:

 for i in range(0, 10):
    num = int(input('Enter Number:'))
    if num > 1:
        # check for factors
        for i in range(2, num):
            if (num % i) == 0:
                print(num, "is not a prime number")
                print(i, "times", num // i, "is", num)
                break
        else:
            print(num, "is a prime number")

    # if input number is less than
    # or equal to 1, it is not prime
    else:
        print(num, "is not a prime number")

注意: 在 for 循环中,如果您想在开始时接受输入,则从用户那里获取输入 10 次,然后您也可以这样做,然后您可以在该列表中运行循环。选择是你的!

原文由 Abdullah Ahmed Ghaznavi 发布,翻译遵循 CC BY-SA 4.0 许可协议

import math

def is_prime(n):
    if n % 2 == 0 and n > 2:
        return False
    return all(n % i for i in range(3, int(math.sqrt(n)) + 1, 2))

for i in range(10):
    number = input("Choose number #%s : " % i)
    if is_prime(int(number)):
        print("%s is prime" % number)
    else:
        print("%s is not prime" % number)

原文由 Gabriel Samain 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题