文档详情

java实验2(计算日期源代码).doc

发布:2017-12-09约6.68千字共8页下载文档
文本预览下载声明
实验二 简单数据类型和流程控制 4:设int year,month,day分别表示一个日期中的年月日,试编程求 对于任意三个整数,判断其是否为一个合法的日期值。 给定一个日期值,计算若干天后的日期值 如果有两个日期值,计算他们相距的天数。 实验原理: 先了解日期,年份分为平年闰年,其中平年365天,这年的二月份为28天,闰年有366天,这年二月份有29天,月份除了二月之外,30天和31天之分,这主要用到数组来进行定义月份的天数,利用Scanner类从键盘中输入日期和相隔天数。输入日期不能超出那个日历相应的规定值 实验过程: 需引用的:Scanner 包名:date 类: Datetext 属性:year,month,day; 方法:int Datetrue(int year,int month,int day)(这个方法功能是验证输入的日期是否正确,其中包括月份,每月的天数的验证,具体详细,看函数标注) int CountDate(int year1,int month1,int day1,int count1)(给定一个日期,计算count天后的日期是什么时候,在这个函数里,还有调用Datetrue(int year,int month,int day)认证输入的日期是否正确) int timeGap(int year_2,int month_2,int day_2,int year3,int month3,int day3)(输入两个日期,计算它们相隔时间多少天,先验证输入的日期是否正确,调用input()函数,具体详细过程看源代码) void input(int y,int m,int d)(这个函数通过递归调用,因输入的日期不正确要求用户重新输入,调用了Dateture(int year,int month,int day)) package date; import java.lang.String; import java.util.Scanner; public class Datetext { public int year,month,day; public int Datetrue(int year,int month,int day){ //验证输入的日期是否符合正常输入 int y=year; int d=day; int mon=month; int g=0; //mon是月份 //int num=0; /* num=year.length(); if(num!=4){ System.out.println( year+年份输入不合法); }*/ if(mon12||mon1){ System.out.println( month+月份输入不合法); g=-1; } else System.out.println(输入月份合法); if(d31||d1) System.out.println( 日期输入不合法); if(mon!=2){ if(mon==1||mon==3||mon==5||mon==7||mon==8||mon==10||mon==12){ if((d31||d1)){ System.out.println( 日期输入不合法); g=-1; } else System.out.println(输入日份合法); } else{ if((d30||d1)){ System.out.println(日期输入不合法); g=-1; } else System.out.println(输入日份合法); } } else { if(y%4==0) { if((d29||d1)){ System.out.println( 日期输入不合法); g=-1; } else System.out.println(输入日份合法); } if(y%4!=0) { if((d28||d1)){ System.out.println( 日期输入不合法); g=-1; } else System.out.println(输入日份合法); } } return g; } public int CountDate(int year1,int month1,int day1,int count1){ //给点一个日期值,计算若干天后的日期 int year10=year1,month10=month1,day10=day1,count=count1; System.out.pri
显示全部
相似文档