【问题标题】:Zybooks Leap year Python functionZybooks 闰年 Python 函数
【发布时间】:2022-10-20 03:01:48
【问题描述】:

6.23 LAB:闰年 - 函数

现代公历中的一个普通年份由 365 天组成。实际上,地球绕太阳旋转需要更长的时间。考虑到时间上的差异,每 4 年有一个闰年。闰年是一年有 366 天:额外的一天,2 月 29 日。给定年份为闰年的要求是:

  1. 年份必须能被 4 整除

  2. 如果年份是世纪年(1700、1800 等),则年份必须能被 400 整除

    一些示例闰年是 1600、1712 和 2016。

    编写一个程序,该程序需要一年并确定该年二月的天数。

    例如:如果输入是:

    1712 输出是:

    1712 年二月有 29 天。 例如:如果输入是:

    1913年 输出是:

    1913 年二月有 28 天。 您的程序必须定义并调用以下函数。该函数应返回输入年份二月份的天数。 def days_in_feb(user_year)

    嘿,伙计们,我遇到了这个问题。我为这个问题获得了部分功劳,但我在最后一部分苦苦挣扎

    2:单元测试 0 / 2 days_in_feb(1913)

    你的输出 days_in_feb(1913) 错误返回 False

    3:单元测试 0 / 3 days_in_feb(1600)

    你的输出 days_in_feb(1600) 错误返回 True

    4:单元测试 0 / 3 days_in_feb(1900)

    你的输出 days_in_feb(1900) 错误返回 False

    这是我目前所做的。

    def days_in_feb(年): 闰 = 年 % 4 == 0 和(年 % 400 == 0 或年 % 100 != 0) 回飞跃

    如果姓名== '主要的': 年 = 整数(输入()) 如果 days_in_feb(年):

        print(year,"has 29 days in February.")
    else:
        print(year,"has 28 days in February.")
    

【问题讨论】:

标签: python


【解决方案1】:

虽然你没有抄下整个问题,但由于我也在查看 Zybooks,所以我只是查看了这个问题。也许我可以给你看我的。

def days_in_feb(user_year): 
    if user_year % 4 == 0 and user_year % 100 != 0: #Condition to check regular leap years 
        return 29
    elif user_year % 400 == 0:                      #Condition to check XX00s
        return 29
    else:                                           #Condition for non-leap years
        return 28

if __name__ == '__main__':
    year = int(input())
    day = days_in_feb(int(year))
    print(f'{year} has {day} days in February.')

【讨论】:

    猜你喜欢
    • 2022-12-10
    • 2022-10-13
    • 1970-01-01
    • 2017-08-15
    • 1970-01-01
    • 2011-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多