数学知识的应用(日期差问题)
2018-03-23 23:50
204 查看
必备小常识:闰年的判断方式
package sf_02; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Main { /** * @param args */ /* * 日期差的问题 * * 2015-3-2 距离1979-12-15多少天 * 日期表示法:距离基点的天数 */ //日期表示法?距离基点的天数 public static int day_dif(int year1,int month1,int day1,int year2,int month2,int day2){ return get_days(year2,month2,day2)-get_days(year1,month1,day1); } public static boolean is_leap_year(int year){ boolean tag=false; if(year%4==0&&year%100!=0) tag=true; if(year%400==0) tag=true; return tag; } //算出当前的时间距离公元1月1号的时间 public static int get_days(int year,int month,int day){ int sum=0; int M[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; if(is_leap_year(year)) M[2]++; for(int i=1;i<year;i++){ sum+=365; if(is_leap_year(i)) sum++; } for(int i=1;i<month;i++){ sum+=M[i]; } //几天这个事有个考虑: 距离基线过去几天,公元1月1日可以说过去了一天也可以说过去了0天 sum+=day; return sum; } public static void main(String[] args) { // TODO Auto-generated method stub System.out.print(day_dif(1979,12,15,2015,3,2)); } }
相关文章推荐
- 数学递推思想在程序中的应用(一)----------兔子问题
- C语言基础知识应用问题解决!
- 数学递推思想在程序中的应用(二)----------放球问题
- 任何国家都无法限制数字货币。为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技术 e.拜占庭算法 f.权益证明POW,POS,DPOS 原因一: 点对点网络设计 其中点对点的P2P网络是bittorent ,由于是点对点的网络,没有中心化,因此在全球分布式的网
- ACM-数学知识的算法应用
- 动态规划5:求解最多航线问题(应用了最长子序列知识)
- 【知识贴】战争中的数学应用
- 任何国家都无法限制数字货币。为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技术 e.拜占庭算法 f.权益证明POW,POS,DPOS 原因一: 点对点网络设计 其中点对点的P2P网络是bittorent ,由于是点对点的网络,没有中心化,因此在全球分布式的网
- BZOJ 3505 浅谈组合数学在图形区域分割问题的应用
- 在NHibernate中应用Mysql正为空日期的问题困扰
- 蓝桥杯赛前冲刺补习第四课——《数学知识的应用》
- [jbb0523整理]压缩感知中的数学知识:NP-hard问题
- SQL union 从字符串转换日期和/或时间时,转换失败(基础知识不牢固导致坑爹的问题)
- 数学知识的应用(天枰称重)
- ALGO-100 整除问题 循环语句 数学知识 VIP试题
- 数学知识的应用(一步之遥--暴力、欧几里得)
- iOS知识----WebView 的一些应用与问题处理
- 卡特兰数在多种问题下的应用 组合数学-Catalan数
- 无约束问题极值的求解及数学建模算法与应用第三章
- 知识管理如何应用?解决这些问题的关键在于:文档管理