Java基础 - 练习(五)根据今天日期获取一周内的日期(基姆拉尔森公式)
基姆拉尔森计算公式用于计算一周内的日期。比如给你年月日,从而计算今天是星期几。
基姆拉尔森公式
Week = (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1) mod 7, 3<=m<=14
Week的取值范围是0 ~ 6,其中0代表星期日,1 ~ 6分别代表星期一到星期六。注意在运算时要把1月和2月看为是上一年的13月和14月代入计算!
int Date(int y,int m,int d)
{if(m==1||m==2){//一二月换算m+=12;y--;}int week = (d + 2*m +3*(m+1)/5 + y + y/4 - y/100 + y/400 + 1)%7;return week;//其中0~6表示周日、周一到周六
}
计算今天是周几
public static void dateToWeek1(){Scanner scanner = new Scanner(System.in);// 声明 int 类型的变量 y 用来获取控制台输入的年System.out.print("年:");int y = scanner.nextInt();// 声明 int 类型的变量 m 用来获取控制台输入的月System.out.print("月:");int m = scanner.nextInt();// 声明 int 类型的变量 d 用来获取控制台输入的日System.out.print("日:");int d = scanner.nextInt();/********** Begin **********/// 第一步,判断变量 m 的值是否是 1 或者 2。如果是,则变量 m 在原来的基础上加12,同时变量 y 在原来的基础上减1if (m == 1 || m == 2) {m += 12;y--;}// 第二步,使用基姆拉尔森日期公式,计算星期几int iWeek = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;// 第三步,使用多路分支判断星期几。如果是星期一,则在控制台输出"星期一";如果是星期二,则在控制台输出"星期二"....以此类推,如果是星期日,就是在控制台输出"星期日"switch (iWeek) {case 0:System.out.print("星期一");break;case 1:System.out.print("星期二");break;case 2:System.out.print("星期三");break;case 3:System.out.print("星期四");break;case 4:System.out.print("星期五");break;case 5:System.out.print("星期六");break;case 6:System.out.print("星期日");break;}/********** End **********/
}

相关文章:
Java基础 - 练习(五)根据今天日期获取一周内的日期(基姆拉尔森公式)
基姆拉尔森计算公式用于计算一周内的日期。比如给你年月日,从而计算今天是星期几。 基姆拉尔森公式 Week (d2*m3*(m1)/5yy/4-y/100y/4001) mod 7, 3<m<14Week的取值范围是0 ~ 6,其中0代表星期日,1 ~ 6分别代表星期一到星期…...
HTML5 新元素
HTML5 新元素 HTML5是最新版本的HTML,引入了许多新元素和功能,以更好地满足现代网页设计的需要。这些新元素不仅增强了网页的表现力,还提高了代码的可读性和可维护性。本文将详细介绍HTML5中的新元素,包括它们的功能和用法。 1.…...
虹软ArcSoft—真正离线免费的人脸识别SDK
虹软ArcSoft—真正离线免费的人脸识别SDK 高级功能收费 还是很好滴 人证核验功能是C/C的SDK,需要封装为C#,然后暴露为Restful API使用...
[环境配置]vscode通过ssh连接autodl进行项目开发
警告:如果使用VSCode直接执行或开终端执行训练程序,请在调试完成后最后通过screen/tmux工具开守护进程,确保程序不受SSH连接中断影响程序执行! 官方文档:请戳 AutoDL使用方法: 在进行操作前您需要提前安装…...
2024中国宁波-东南亚职业教育产教协同发展校企对接会举办
2024年6月16日,由东南亚教育部长组织技术教育发展中心(SEAMEO TED)、联合国教科文组织国际农村教育研究与培训中心(UNESCO INRULED)、中国教育国际交流协会(CEAIE)三方主办的“2024中国宁波-东南…...
Web前端、后端与建站:全方位解析四大基石、五大挑战、六大技术与七大策略
Web前端、后端与建站:全方位解析四大基石、五大挑战、六大技术与七大策略 在当今数字化时代,Web前端、后端以及建站技术已经成为构建现代网站和应用不可或缺的关键要素。本文将从四个方面探讨Web前端与后端的基础,从五个方面分析建站过程中的…...
nginx出现504 Gateway Time-out错误的原因分析及解决
nginx出现504 Gateway Time-out错误的原因分析及解决 1、查看公网带宽是否被打满 2、查看网络是否有波动(可以在nginx上ping后端服务,看是否有丢包情况) 3、查看服务器资源使用情况(cpu、内存、磁盘、网络等) 4、查看nginx日志,具体到哪个服务的哪个…...
基于STM32的智能插座项目
本项目基于stm32f103c8t6芯片通过集成众多模块和元器件,通过ESP01-S和阿里云平台实现智能插座的项目开展。资料获取到咸🐟:xy591215295250 \\\或者联系wechat 号:comprehensivable 随着电子科学与技术的快速发展,软硬件…...
VR虚拟现实(Virtual Reality)
虚拟现实(Virtual Reality)是一种通过计算机技术和设备模拟现实世界的环境和体验的技术。它创造了一个虚拟的三维环境,用户可以通过穿戴设备和感应器与该环境进行互动和沉浸。 虚拟现实技术包括以下几个关键组成部分: 头戴设备&a…...
pywinauto入门指南:轻松掌握Windows GUI自动化
pywinauto库概述: pywinauto是一个Python库,主要用于自动化Windows应用程序的GUI测试和操作.它提供了一组简单而强大的API,可以模拟用户与Windows应用程序的交互,包括点击按钮、输入文本、选择菜单等操作. 安装 ##pywinauto可以通过pip进行安装,打开命令行运行: pip install…...
分布式缓存框架Hazelcast与Java整合详解
引言 在现代的分布式系统中,缓存是提高性能的关键组件之一。Hazelcast作为一个开源的分布式内存数据网格(IMDG),提供了分布式缓存、集群和并发数据结构等功能。本文将详细介绍如何在Java应用中整合Hazelcast,并通过代…...
ApplicationEventPublisher的使用、Spring事件发布
spring事件的订阅发布,适用业务解耦合 使用场景:新用户注册之后,需要发放优惠券;一个订单服务在接收到新订单时发布一个“订单已创建”事件,库存服务和通知服务分别订阅该事件;日志和监控;实时通知系统;异…...
RFID优缺点和应用场景
一、RFID技术特点 优点 快速扫描:RFID识别器可以同时读写多个RFID标签,读取速度非常快。有源RFID系统的草图功能可以用于交互式服务,如过程跟踪和维护跟踪。 小型化和形状多样化:RFID标签向小型化和多样化方向发展,以…...
可信启动Trusted Board Boot
TBB Trusted Board Boot(TBB)对所有固件镜像(包括普通世界的bootloader)进行身份验证,以防止恶意固件在平台上运行。TBB使用公钥加密标准 (PKCS)来建立信任链(Chain of Trust&#…...
JVM的类加载机制
Java中类的加载阶段 类加载 Java中的类加载机制是Java运行时环境的一部分,确保Java类可以被JVM(Java虚拟机)正确地加载和执行。类加载机制主要分为以下几个阶段: 加载(Loading):这个阶段&#x…...
C++中的八大设计原则
目录 摘要 C中的8大设计原则 1. 单一职责原则 (Single Responsibility Principle, SRP) 2. 开放封闭原则 (Open/Closed Principle, OCP) 3. 里氏替换原则 (Liskov Substitution Principle, LSP) 4. 依赖倒置原则 (Dependency Inversion Principle, DIP) 5. 接口隔离原则…...
2024广东省职业技能大赛云计算赛项实战——Minio服务搭建
Minio服务搭建 前言 这道题是比赛时考到的,没找到具体题目,但在公布的样题中找到了,虽然很短~ 使用提供的 OpenStack 云平台,申请一台云主机,使用提供的软件包安装部署 MINIO 服务并使用 systemctl 管理 Minio是一个…...
【考研408计算机组成原理】数值表示和运算之快速数值转换
苏泽 “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家 另外,利用了工作之余的一点点时间,整理了一套考研408的知识图谱, 我根据这一套知识图谱打造了这样一个408知识图谱问答系统 里面的每一…...
理解 JTBD 框架和EJ 理念:深挖以用户为中心的设计
在与用户的交流中,我们发现对用户需求的精准洞察普遍困扰着产品经理、设计、企划人员,因为当今消费者行为已经由单品消费转向场景消费,千人千面的个性化需求出现,消费者数据维度极大丰富,这对把握用户体验造成了很大挑…...
数据提取与治理:企业实现数据驱动决策的必经之路
数据提取与治理:企业实现数据驱动决策的必经之路 随着信息技术的迅猛发展,数据已经成为企业最宝贵的资产之一。然而,数据并非天生就具有价值,只有通过有效的提取和治理,才能转化为企业决策的有力支撑。本文将探讨数据…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
视觉slam十四讲实践部分记录——ch2、ch3
ch2 一、使用g++编译.cpp为可执行文件并运行(P30) g++ helloSLAM.cpp ./a.out运行 二、使用cmake编译 mkdir build cd build cmake .. makeCMakeCache.txt 文件仍然指向旧的目录。这表明在源代码目录中可能还存在旧的 CMakeCache.txt 文件,或者在构建过程中仍然引用了旧的路…...
