根据输入年月日输出周几


计算原理

蔡勒公式
这里写图片描述
■ h 代表最后的计算结果周几 (0: Saturday, 1: Sunday, 2: Monday, 3: Tuesday, 4:Wednesday, 5: Thursday, 6: Friday)。
■ q 代表你输入的日期。
■ m 代表你输入的月份。
■ j 代表输入日期所在的世纪,即输入年份的前两位。
■ k 代表日期所在世纪的年份,即输入年份的后两位。


JAVA代码

package Year;
import java.util.*;

public class Year {
    public static void main(String[] args) {
        Scanner reader=new Scanner(System.in);
        System.out.print("Enter year(eg.2008):");
        int year=reader.nextInt();
        System.out.print("Enter month(1-12):");
        int month=reader.nextInt();
        System.out.print("Enter the day of the month: ");
        int day=reader.nextInt();
        int h=(day+(26*(month+1)/10)+(year%100)+((year%100)/4)+(year/100)/4+5*(year/100))%7;
        String week=new String("nothing") ;
        switch(h)
        {
        case 0: week="Saturday"; break;
        case 1: week="Sunday";break;
        case 2: week="Monday";break;
        case 3: week="Tuesday";break;
        case 4: week="Wednesday";break;
        case 5: week="Thursday";break;
        case 6: week="Friday";break;
        default:
            System.out.println("Wrong!");
        }
        System.out.println("Day of the week is "+week);
    }

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值