Java实例-输入年月日完成以下判断
来源:互联网 发布:ug4.0编程加工步骤 编辑:程序博客网 时间:2024/06/05 23:52
完成以下要求
1:判断是否输入正确
2:判断输入的日期为星期几
3:判断输入的日期距离输入的第二个日期有多少天
4:判断输入日期的年龄
代码实现
package com.minrisoft;import java.lang.String; import java.util.Scanner;public class Demo { public static void calcWeek(int a,int b,int c){//判断星期几 int x = a,y = b,z = c; if(b == 1){ b = 13; a =a - 1; } if(b ==12){ b = 14; a = a - 1; } int h = (int) ((c + (26 * (b + 1) / 10) + (a % 100) + ((a % 100) / 4) + ((a / 100) / 4) + 5 * (a / 100)) % 7); switch (h) { case 0: System.out.println(x + "年" + y + "月" + z + "日:星期六"); break; case 1: System.out.println(x + "年" + y + "月" + z + "日:星期天"); break; case 2: System.out.println(x + "年" + y + "月" + z + "日:星期一"); break; case 3: System.out.println(x + "年" + y + "月" + z + "日:星期二"); break; case 4: System.out.println(x + "年" + y + "月" + z + "日:星期三"); break; case 5: System.out.println(x + "年" + y + "月" + z + "日:星期四"); break; case 6: System.out.println(x + "年" + y + "月" + z + "日:星期五"); break; } } public static boolean leapYear(int y){//判断闰年 if (y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)) return true; else return false; } public static int countDay(int y, int m, int d){//计算天数 int month_1[] ={ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int month_2[] ={ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int count = 0; do { count += 365; if (leapYear(y) == true) count += 1; }while((--y)!= 0); do{ if (leapYear(y) == true) count += month_1[m-1]; else count += month_2[m-1]; }while ((--m)!= 0); count += d; return count;} public static void Ture_or_False(int x,int y,int z){//判断输入的日期是否正确 if (y >= 1 && y <= 12 && z >= 1 && z <= 31){ if (y == 4 || y == 6 || y == 9 || y == 11){//当月份为4,6,9,11时 if (z > 30){ System.out.println("输入错误"); System.out.println(">-----------------------------<"); System.exit(0); } } if (y == 2){//当月份为2时 if (leapYear(y) == true){ if (z > 29){ System.out.println("输入错误"); System.out.println(">-----------------------------<"); System.exit(0); } } else{ if (z > 28){ System.out.println("输入错误"); System.out.println(">-----------------------------<"); System.exit(0); } } } } else{ System.out.println("输入错误"); System.out.println(">-----------------------------<"); System.exit(0); } System.out.println(x + "年" + y + "月" + z + "日:输入正确"); } public static void sumday(int y1,int y2,int x,int y,int z,int i,int j,int k){//判断输入的日期距离某天(输入的第二个日期)的天数 if (y1 == y2) System.out.println(x + "年" + y + "月" + z + "日:处于今天"); if (y1 < y2) System.out.println(x + "年" + y + "月" + z + "日距离"+i + "年" + j + "月" + k + "有" + (y2 - y1) + "天"); if (y1 > y2){ System.out.println(x + "年" + y + "月" + z + "日距离"+i + "年" + j + "月" + k + "有" + (y1 - y2) + "天"); } } public static void ages(int y1,int y2,int x,int y,int z){//判断年龄 if (y1 > y2){ System.out.println(x + "年" + y + "月" + z + "日:没有出生"); } else{ int a = 2017 - x; if (y > 4 || (x != 2017 && y == 4 && z > 10)) a -= 1; System.out.println(x + "年" + y +"月" +z +"日:今年"+ a + "岁"); } } public static void main(String [] args){ Scanner sc = new Scanner(System.in); System.out.print("请输入第一个日期(格式:yymmdd):"); String y_m_d_1 = sc.nextLine(); System.out.println("请输入第二个日期(格式:yymmdd)"); System.out.print("注意:保证在第一次输入的日期之后:"); String y_m_d_2 = sc.nextLine(); sc.close(); //String 转 int int x =Integer.parseInt(y_m_d_1.substring(0,4));//截取年 int y =Integer.parseInt(y_m_d_1.substring(4,6));//截取月 int z =Integer.parseInt(y_m_d_1.substring(6,8));//截取日 int a =Integer.parseInt(y_m_d_2.substring(0,4));//截取年 int b =Integer.parseInt(y_m_d_2.substring(4,6));//截取月 int c =Integer.parseInt(y_m_d_2.substring(6,8));//截取日 int year_1 = countDay(x,y,z); int year_2 = countDay(a,b,c); System.out.println(">------------查询结果----------<"); Ture_or_False(x,y,z); calcWeek(x,y,z); sumday(year_1,year_2,x,y,z,a,b,c); ages(year_1,year_2,x,y,z); System.out.println("|------------------------------|"); }}
0 0
- Java实例-输入年月日完成以下判断
- 判断输入的年月日是否合法
- 判断年月日的输入是否合法
- 7--1(输入“年月日”判断第几天)
- 输入年月日判断是第几天
- 判断输入的年月日是否合理
- 输入年月日判断是第几天
- 如何判断Edittext输入完成
- AJAX实例:输入判断
- java根据年月日判断周几
- 根据输入的年月日,自动判断生日日期
- C++练习之 判断输入的年月日是否合法
- 输入身份证号,判断其地区、出生年月日、性别
- 输入年月日并判断是该年第几天
- 04-输入年月日,判断是今年的第几天
- 输入身份证号,出生年月日、性别、判断其地区
- 输入年月日 判断这是这一年的第几天
- js判断输入的年月日是一年中的第几天
- FCN全卷积网络上采样理解
- ListView的点击事件与子控件点击冲突的解决
- 内存的构造和变量占用的字节数
- 解决MYSQL的错误:Got a packet bigger than 'max_allowed_packet' bytes
- BZOJ 5049. 【GDOI2017模拟一试4.11】腐女的生日
- Java实例-输入年月日完成以下判断
- Proud Merchants HDU
- 怎样才能将刘徽割圆术动画演示
- (原创)详解共享参数存储
- php 替代被弃用函数的
- PHP过滤敏感词
- navicat无法连接数据库
- JSP中数据库的使用
- Django--制作表单