ZeroDivisionError:整数除法或以零为模我看不到任何错误

问题描述 投票:0回答:3

请帮忙解决这个问题。我将非常感激!

t = int(input())
count = 0 
m = []
for i in range(0,t):
    num = int(input())
    m.append(num)
for z in m:
    for i in range(0,z):
        if z%i==0:
            count = count + 1
        else:
            count = count + 0
        if count % 2 == 1:
            print('YES')
        else:
            print('NO')
        
    count = None 

回溯(最近一次调用最后一次): 文件“solution.py”,第 9 行,位于 如果 z%i==0: ZeroDivisionError:整数除法或以零为模

python function
3个回答
0
投票

您可以使用 1 作为起始值来避免此错误(零除法)

for i in range(1,z):

0
投票

变量 i 定义在 range(0,z) 中,它总是从零开始。 从数学上讲,零的模是未定义的,这就是您收到错误的原因。


0
投票

我看到你发布并删除了你为finonacci_sequence所做的帖子,如果你想要你所期望的代码,在这里:

def generate_fibonacci_sequence(n):
    if n <= 0:
        return ""
    elif n == 1:
        return "0"
    
    sequence = [0, 1]
    for i in range(2, n):
        next_number = sequence[-1] + sequence[-2]
        sequence.append(next_number)
    
    # Convert all integers in the list to strings
    str_sequence = [str(num) for num in sequence]
    
    # Print out each step of growing Fibonacci-like pattern
    for i in range(n):
        print(''.join(str_sequence[:i+1]))

# Example usage:
generate_fibonacci_sequence(8)
© www.soinside.com 2019 - 2024. All rights reserved.