java - java中的数学问题试图找出我的代码有什么问题
问题描述
所以代码有效,但有些年份应该是闰年,但不像 2008 年那样显示它不是闰年。
//is leap year if...
if ((whichYear % 4 == 0) && (whichYear % 100 == 0) && (whichYear % 400 == 0))
{
isLeapYear = true;
daysLeftInYear = 366;
System.out.println("true " + daysLeftInYear);
}
else
{
isLeapYear = false;
daysLeftInYear = 365;
System.out.println("false " + daysLeftInYear);
}
解决方案
最简单的方法是将其分解为两种可能性。
If (year % 100 == 0) {
// if century year
} else {
// if not century year.
}
The rest is up to you.
推荐阅读
- python - 如何使用 Flask WTForms 创建多选选项
- python - 为什么我的 py_test 应该在测试失败时通过测试?
- azure-functions - 使用护照 azure-ad 保护 azure 函数 http 触发器
- python - LIKE 在 python lambda 表达式中
- r - 如何在 Rmarkdown 中编写集合的交集和并集
- r - 在R中添加两个向量之间的每个组合
- javascript - 如何为具有 2 个网页的产品编写赛普拉斯测试?
- javascript - 浏览器如何处理包含内联事件处理程序的废弃/销毁页面元素
- kubernetes - 如何为在 GKE 上运行的 Kubernetes 服务定义服务标签
- node.js - 通过 API 网关调用 NodeJS lambda 函数时出现服务器错误