首页 > 编程知识 正文

如何用Python编写1到100所有奇数和

时间:2023-11-22 00:54:29 阅读:289883 作者:VDTY

要实现该功能,我们可以使用Python的循环和条件语句。下面我们将从各个方面进行阐述:

一、 使用for循环和条件语句求和

我们可以使用for循环遍历1到100之间的所有数字,使用if条件语句判断是否为奇数,是则加到总和中:

    
    sum = 0
    for i in range(1,101):
        if(i % 2 == 1):
            sum += i

    print("1到100所有奇数和为:", sum)
    

以上代码中,range(1,101)可以生成从1到100的数字序列(包含1和100),加上if条件语句,可以判断是否为奇数,是则加到sum中。最后输出结果。

二、 使用while循环和条件语句求和

除了使用for循环外,我们也可以使用while循环实现求和。代码与for循环实现的方法类似:

    
    sum = 0
    i = 1
    while i <= 100:
        if(i % 2 == 1):
            sum += i
        i += 1

    print("1到100所有奇数和为:", sum)
    

以上代码中,我们使用while循环遍历1到100之间的所有数字,使用if条件语句判断是否为奇数,是则加到总和中。需要注意的是,这里我们需要手动增加i的值。

三、 使用列表推导式求和

在Python中,还可以使用列表推导式实现求和。我们可以使用一个列表推导式生成1到100之间的所有奇数,然后使用sum()函数求和:

    
    odd_num = [x for x in range(1,101) if x % 2 == 1]
    sum = sum(odd_num)

    print("1到100所有奇数和为:", sum)
    

以上代码中,我们使用列表推导式生成1到100之间所有的奇数,并使用sum()函数求和,最后输出结果。

四、 使用递归实现求和

递归是一种基于函数调用自身的技术。虽然在这个问题中使用递归显得有些“大材小用”,但是我们还是可以通过递归实现求和:

    
    def rec_sum(n):
        if n == 1:
            return 1
        else:
            if n % 2 == 1:
                return n + rec_sum(n-2)
            else:
                return rec_sum(n-1)

    sum = rec_sum(100)

    print("1到100所有奇数和为:", sum)
    

以上代码中,我们定义了一个递归函数rec_sum(n),当n等于1时,返回1;否则,如果n为奇数,返回n加上n-2的奇数和;如果n为偶数,返回n-1的奇数和。最后,我们调用该函数,计算1到100所有奇数和。

五、 总结

在本文中,我们从多个方面阐述了如何使用Python编写1到100所有奇数和。不同的实现方式虽然代码不同,但实现方式基本相同。了解这些基本的编程方法,对我们进行以后的编写,提高我们的编程能力有一定的帮助。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。