繁体   English   中英

找出所有能被5整除的奇数

[英]Finding all odd numbers divisible by 5

我正在尝试编写一个程序来显示可被 5 整除的奇数,但它不起作用。 有人可以告诉我我做错了什么吗?

def show_odd_numbers(min, max):     #this program shows odd numbers divisible by 5.      
    show_odd_numbers = range(5,81)     
    for numbers in range(min,max):       
        if numbers % 5 == 0:         
            show_odd_numbers.count     
    print(show_odd_numbers)

有几个问题:您没有检查数字是否为奇数,您没有使用minmax (它们不是您应该使用的变量名,因为它们是内置变量的名称),并且.count是可能不是您真正想要的东西。 这是解决所有这些问题的代码片段:

def show_odd_numbers(lower, upper):
    for number in range(lower, upper + 1):       
        if number % 5 == 0 and number % 2 == 1:         
            print(number)
            
show_odd_numbers(5, 81)

这输出:

5
15
25
35
45
55
65
75

您可以编写一个代码,返回一个范围内可被 5 整除的奇数。 您需要的代码:

import numpy as np
def show_odd_numbers(min, max):     #this program shows odd numbers divisible by 5. 
    results = []
    for number in np.arange(min,max):       
        if number % 5 == 0 and number % 2 ==1:         
            results.append(number)
    return(results)

申请 function

show_odd_numbers(1,20)

Output:

[5,15]

如果检查并适当调整下限,则可以减少获得所需 output 所需的循环量。例如:

def show_odd_numbers(lower, upper, n=5):
    if lower % n != 0:
        lower += n
        lower -= lower % n
    if lower % 2 == 0:
        lower += n
    return range(lower, upper+1, n*2)

for n in show_odd_numbers(1, 20):
    print(n)

Output:

5
15

笔记:

这仅在 n 为奇数时有效

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM