Skip to main content
 首页 » 编程设计

python之无余数python

2025年05月04日15zhujiabin

我需要打印出 1 到 n(n 是用键盘输入的)之间不被 2、3 和 5 除的数字。 我需要使用 while 或 for 循环,其余部分由 % 获取。 我是新来的,我只是不明白 %? 的用法。 我试过这样的事情:

import math 
 
print("Hey. Enter a number.") 
 
entered_number = int(input()) 
 
for i in range(1, entered_number): 
 
    if i%2 != 0: 
        print("The number", i, "is ok.") 
    else: 
        pass 
    if i%3 != 0: 
        print("The number", i, "is ok.") 
    else: 
        pass 
    if i%5 != 0: 
        print("The number", i, "is ok.") 

帮助?

请您参考如下方法:

您需要在一个 语句中测试所有 3 个条件,而不是在 3 个中:

for i in range(1, entered_number):     
    if i % 2 != 0 and i % 3 != 0 and i % 5 != 0: 
        print("The number", i, "is ok.") 

此处的 和 运算符确保在打印之前满足所有三个条件。

您正在单独测试每个条件,这意味着如果数字是 10,您仍在打印 The number 10 is ok. 因为它不能被 3 整除。对于数字是没问题,你正在打印 The number ... is ok. 3 次,因为你的代码测试它不能分别被 3 个不同的数字整除,每次打印.