2017-10-12 56 views
-3

我使用for循环打印0到100之间的数字,它们是3的倍数。现在我必须打印可以被二整除的那些,我似乎无法使它正常工作。如何在for循环中打印可被二进制整除的数字

我需要显示两个,我做了下面,但是有没有办法将第二个for循环合并到第一个循环中,以便在三个倍数的同一个循环中打印并且不打印可分割的循环。

代码:

for x in range(0,100,3): 
    print(x) 
for n in range(0,100,3): 
    if n % 2 == 0: 
     print(n) 
+0

注意哪些双方2和3整除的数字实际上整除6 – mshsayem

+0

一个自己循环为0-100,可以由2的多个3和div除以2来分开? – LenglBoy

回答

0
for x in range (0,100,2): 
    print(x) 

这将2打印那些整除排除100

0

您需要添加一个if语句来检查它们是由2整除的数字。如果一个数字可以被2整除,那么余数将是0。要检查这一点,您可以使用%(模)运算符。

所以,你必须:

for x in range (0, 100, 3): 
    # check if x is evenly divisible by 2 
    # i.e. is the remainder zero when divided by 2 
    if x % 2 == 0: 
     print(x) 

或者,你可以在6步骤上去,因为623LCM

for x in range(0, 100, 6): 
    print(x) 
0
for x in range (0,100,3): 
    print("Multi of 3: " + str(x)) 

    if(x % 2 == 0): 
     print("Div by 2: " + str(x)) 

    if(x % 3 == 0 AND x % 2 == 0): 
     print("Both: " + str(x)) 
-1

不是在Python中的专家,但logicaly所有语言都有一个模运算

sum = 0 

for i in range (yourange): 
    if (i % 3 == 0) 
     sum += i 
return sum