Python-让用户输入10个数字,然后只显示素数
如果可能的话,我需要你的帮助。我对Python非常陌生,但我对C#,java有很好的理解,现在已经开始学习Python作为我学习计划的一部分。我有一项任务要做,我无法得到任何帮助,因为我认识的人中没有人使用python 我的任务是: “从给定的10个数字列表中查找素数。用户应输入10个数字”Python-让用户输入10个数字,然后只显示素数,python,python-3.x,Python,Python 3.x,如果可能的话,我需要你的帮助。我对Python非常陌生,但我对C#,java有很好的理解,现在已经开始学习Python作为我学习计划的一部分。我有一项任务要做,我无法得到任何帮助,因为我认识的人中没有人使用python 我的任务是: “从给定的10个数字列表中查找素数。用户应输入10个数字” 谁能帮我一下吗?提前感谢您需要一个函数isPrime(n),它可以检查n是否是这样的素数: import math def is_prime(n): if n % 2 == 0 and n >
谁能帮我一下吗?提前感谢您需要一个函数isPrime(n),它可以检查n是否是这样的素数:
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)
import math.sqrt
def iPrime(n):
对于范围(2,int(sqrt(n))+1)内的i:
如果n%i==0:
返回错误
返回真值
然后,您只需获得输入数字(int(输入(“输入一个数字”)),存储您的数字,并在列表中的所有数字中使用该函数。非常简单,我根据您的要求为您制作了此程序,用户必须输入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次如果您想在开始时获取输入,那么您也可以访问该列表,然后您可以在该列表中运行一个循环。选择权归您所有!:)
希望这对你有帮助!:) 要获得10个数字的输入,只需将input()放入for循环,如下所示:
for i in range (0,11):
input("Number")
除此之外,您还需要一个函数来调用您的数字是否为素数
def isPrime(n):
for i in range(2,int(sqrt(n))+1):
if n%i==0:
return False
return True
通常情况下,你应该先尝试,先破译代码,然后再问;但是,嘿,我很无聊,所以我为你破例,以下是全部代码:3你试过什么?请提供一些代码。给我们一些代码和更多规则,例如可能的数字范围。问题是询问python3答案,正如您在标签中看到的,您的答案是python2。对
print
周围的括号投反对票有点苛刻,但是,代码更新并在Python3上运行只要您修复它,它是暂时的,只是尝试遵循规则:^)感谢您的努力我真的很感激,唯一的问题是您的代码没有设置用户输入的固定数量(10)。然而,功能是完美的。再次感谢您的努力,我将确保在以后的问题中添加我的代码!
from math import sqrt; from itertools import count, islice
import sys
def is_prime(n):
return n > 1 and all(n%i for i in islice(count(2), int(sqrt(n)-1)))
def primer(*args):
return '-'.join([str(x) for x in args if is_prime(x)])
while True:
try:
user_input = input('Enter any amount of numbers seperating them with a comma; or enter quit to quit: ')
if any(user_input==x for x in ("quit", "q", "exit", "e")):
sys.exit()
our_list = [int(x) for x in user_input.split(',')]
print(primer(*our_list))
except ValueError:
print('Please only enter numbers')