Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在线课程-素数_Python_Python 3.x - Fatal编程技术网

Python 在线课程-素数

Python 在线课程-素数,python,python-3.x,Python,Python 3.x,感谢您对下面奖金问题的帮助。我已经为FizzBuzz完成了课程,但我在主要部分上仍有困难 初始测试-工作 嘶嘶作响。数一到一百。对于3个打印气泡的每一个倍数。5个打印嗡嗡声的倍数。可被3和5整除的打印气泡 但好处是,只要数字是素数,就可以遍历这些数字并打印“素数” 我似乎无法让主要部分发挥作用。我试着在里面发表评论,这样更容易理解 number = 1 def isPrime(number): # First Attempt - Didn't work for i in rang

感谢您对下面奖金问题的帮助。我已经为FizzBuzz完成了课程,但我在主要部分上仍有困难

初始测试-工作 嘶嘶作响。数一到一百。对于3个打印气泡的每一个倍数。5个打印嗡嗡声的倍数。可被3和5整除的打印气泡

但好处是,只要数字是素数,就可以遍历这些数字并打印“素数”

我似乎无法让主要部分发挥作用。我试着在里面发表评论,这样更容易理解

number = 1


def isPrime(number):  #  First Attempt - Didn't work
    for i in range(2,number+1):
        if (number % i == 0):
            print("Prime Found")
            print("For Debug, i is", i)

def isPrime2 (number):
    # remove 0 and 1
    if number < 2: return False
    # 2 is a Prime
    if number == 2: return True
    # Any numbers divisable by 2 are not Primes'
    if number%2 == 0: return False   
    # Range is 2 up to number being checked.  If the number is divisable by the iterator, return False.  
    for x in range(2,number):
        if number % x == 0:
            return False
    return True




while number <=100:
    print("The number is",number)
    if (number%3 == 0) and (number%5 == 0):
        print("FizzBuzz")
        primeval = isPrime2(number) 
        if primeval == True: print("Prime")
        if primeval == False: print("Not Prime")
        number += 1
        continue
    elif (number%3 == 0):
        print("Fizz")
        primeval = isPrime2(number) 
        if primeval == True: print("Prime")
        if primeval == False: print("Not Prime")
        number += 1
        continue
    elif (number%5 == 0):
        print("Buzz")
        primeval = isPrime2(number) 
        if primeval == True: print("Prime")
        if primeval == False: print("Not Prime")
        number += 1
        continue
    else:
        number += 1
        continue


我使用迭代编号(1到100)调用isPrime2 我想问题不在于调用我的函数,而在于我的素性计算。我查了很多例子,坦率地说,我还是不清楚

少于2,不在乎 2的任意倍数都不是素数(可被2整除)
检查在2到数字(正在测试的数字)之间用我的数字i迭代的所有其他数字。

编辑问题以解释什么不起作用。将相关输出或错误消息显示为格式正确的文本。仅当您知道数字可被3和5整除时,才检查素数。您应该将素性检查放在整个
if
语句之外。请提供预期的see。显示中间结果与预期结果的偏差。我们应该能够将单个代码块粘贴到文件中,运行它,并重现您的问题。这也让我们可以在您的上下文中测试任何建议。我们还希望您能够在错误点之前跟踪可疑值。您好,MichaelButscher,谢谢。我已经重新格式化了我的问题,添加了输出,并说明了我有问题的领域。你能重新打开吗?谢谢@PetervanderHeijden,只有当isPrime2函数可以被3、5或3和5整除时,才应该调用它。你是说这首歌看起来不错?Ohhh,我想我在这里错过了x的某个范围(2,数字):如果数字%x==0:这意味着我的范围是我正在测试的数字的2。如果这个数字可以被x次迭代整除,余数是0(意思是它精确地除以),这意味着它不是质数。我不确定我是否应该测试某个东西是质数还是非质数。

The number is 1
The number is 2
The number is 3
Fizz
Prime
The number is 4
The number is 5
Buzz
Prime
The number is 6
Fizz
Not Prime
The number is 7
The number is 8
The number is 9
Fizz
Not Prime
The number is 10
Buzz
Not Prime
The number is 11
The number is 12
Fizz
Not Prime
The number is 13
The number is 14
The number is 15
FizzBuzz
Not Prime
The number is 16
The number is 17
The number is 18
Fizz
Not Prime
The number is 19
The number is 20
Buzz
Not Prime
The number is 21
Fizz
Not Prime
The number is 22
The number is 23
The number is 24
Fizz
Not Prime
The number is 25
Buzz
Not Prime
The number is 26
The number is 27
Fizz
Not Prime
The number is 28
The number is 29
The number is 30
FizzBuzz
Not Prime
The number is 31
The number is 32
The number is 33
Fizz
Not Prime
The number is 34
The number is 35
Buzz
Not Prime
The number is 36
Fizz
Not Prime
The number is 37
The number is 38
The number is 39
Fizz
Not Prime
The number is 40
Buzz
Not Prime
The number is 41
The number is 42
Fizz
Not Prime
The number is 43
The number is 44
The number is 45
FizzBuzz
Not Prime
The number is 46
The number is 47
The number is 48
Fizz
Not Prime
The number is 49
The number is 50
Buzz
Not Prime
The number is 51
Fizz
Not Prime
The number is 52
The number is 53
The number is 54
Fizz
Not Prime
The number is 55
Buzz
Not Prime
The number is 56
The number is 57
Fizz
Not Prime
The number is 58
The number is 59
The number is 60
FizzBuzz
Not Prime
The number is 61
The number is 62
The number is 63
Fizz
Not Prime
The number is 64
The number is 65
Buzz
Not Prime
The number is 66
Fizz
Not Prime
The number is 67
The number is 68
The number is 69
Fizz
Not Prime
The number is 70
Buzz
Not Prime
The number is 71
The number is 72
Fizz
Not Prime
The number is 73
The number is 74
The number is 75
FizzBuzz
Not Prime
The number is 76
The number is 77
The number is 78
Fizz
Not Prime
The number is 79
The number is 80
Buzz
Not Prime
The number is 81
Fizz
Not Prime
The number is 82
The number is 83
The number is 84
Fizz
Not Prime
The number is 85
Buzz
Not Prime
The number is 86
The number is 87
Fizz
Not Prime
The number is 88
The number is 89
The number is 90
FizzBuzz
Not Prime
The number is 91
The number is 92
The number is 93
Fizz
Not Prime
The number is 94
The number is 95
Buzz
Not Prime
The number is 96
Fizz
Not Prime
The number is 97
The number is 98
The number is 99
Fizz
Not Prime
The number is 100
Buzz
Not Prime