我知道这方面有很多主题,我讨厌创建一个新主题,但似乎没有一个主题完全适合,除非它以更高级的方式做某事。我正在学习编程课程,并且希望(需要?)使用我们在第一周学到的简单命令来执行此操作,并且我还希望拥有“我自己的”代码,而不仅仅是抓住一些东西离开互联网。
我正在研究两个非常基本的脚本(.py 文件)。一个请求一个数字并打印出它是否是素数,另一个打印出所有素数,直到第 1000 个素数(我们知道是 7919,因为我们得到了一个指向素数列表的链接检查我们的工作)。
我的第一个脚本:
yourNumber= input('Enter a number: ')
isPrime = 0
if yourNumber == 1:
isPrime = 1
print(yourNumber,'is not a prime number')
else :
for primeCheck in range (int(2), int(yourNumber)):
if int(yourNumber)%int(primeCheck) == 0:
isPrime = 1
break
else:
isPrime = 0
if isPrime == 0:
print(yourNumber,'is a prime number')
else:
print(yourNumber,'is not a prime number')
这个似乎适用于除 0 和 1 之外的任何数字。我不知道我做错了什么。
我的第二个脚本:
numberPrimes = 0
startNumber = 0
currentNumber = startNumber
isPrime = 0
while numberPrimes < 1000:
if currentNumber == 1:
currentNumber = currentNumber + 1
else:
for primeCheck in range (int(2), int(currentNumber)):
if int(currentNumber)%primeCheck == 0:
isPrime = 1
break
else:
isPrime = 0
if isPrime == 0:
print(currentNumber, 'is prime')
numberPrimes = numberPrimes + 1
currentNumber == currentNumber + 1
else:
currentNumber == currentNumber + 1
这个基本上吐了一千遍“0是素数”。不知何故 currentNumber 没有上升或什么的。我不确定。