python闰年问题

img


设计算法并编写程序,输入正整函数,求出公元1~x年中的所有闰年。用函数实现。

基于Monster 组和GPT的调写:

img


x = int(input())

def leap_year(year):
    result = []
    for i in range(1, year + 1):
        if i % 4 == 0 and (i % 100 != 0 or i % 400 == 0):
            result.append(str(i))
    return result

print(' '.join(leap_year(x)))

以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:

思路:

  1. 判断闰年的条件为:能被4整除但不能被100整除,或者能被400整除;
  2. 遍历1到x年,判断每一年是否为闰年,是则加入结果列表;
  3. 返回结果列表。

示例代码:

def leap_year(x):
    result = []
    for year in range(1, x+1):
        if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
            result.append(year)
    return result

# 测试
print(leap_year(2022))  # [4, 8, 12, ..., 2016, 2020]