Java——闰年判断

Java——闰年判断目录任务1、闰年判断(一)编程实现方法一、采用并列式多分支结构评定成绩等级方法二、采用嵌套式多分支结构评定成绩等级方法三、采用延拓式多分支结构评定成绩等级方法四、采用开关式多分支结构评定成绩等级任务1、闰年判断什么是闰年?有两种情况:能被4整除但是不能被100整除;能被400整除解决闰年判断问题,涉及三种运算:算术运算、关系运算、逻辑运算第一种闰年情况:year%4==0&&year%100!=0第二种闰年情况:year%400==0(一)编程实现

大家好,又见面了,我是你们的朋友全栈君。

任务1、闰年判断

  • 什么是闰年?有两种情况:能被4整除但是不能被100整除;能被400整除
  • 解决闰年判断问题,涉及三种运算:算术运算、关系运算、逻辑运算
  • 第一种闰年情况:year % 4 == 0 && year % 100 != 0
  • 第二种闰年情况:year % 400 == 0

(一)编程实现

  • 在net.yangxinying.p02.t02包里创建Task02类
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

方法一、采用并列式多分支结构评定成绩等级

  • 思路:有多少种情况,就并列写多少个单分支

  • 第1个分数段: s c o r e > 100 , s c o r e ∈ ( 100 , + ∞ ) score>100,score\in(100,+\infty) score>100,score(100,+) -超出范围

  • 第2个分数段: 90 ≤ s c o r e ≤ 100 , s c o r e ∈ [ 90 , 100 ] 90\le score \le 100,score\in[90,100] 90score100,score[90,100] -优秀

  • 第3个分数段: 80 ≤ s c o r e < 90 , s c o r e ∈ [ 80 , 90 ) 80\le score\lt 90,score\in[80,90) 80score<90,score[80,90) -良好

  • 第4个分数段: 70 ≤ s c o r e < 80 , s c o r e ∈ [ 70 , 80 ) 70\le score\lt 80,score\in[70,80) 70score<80,score[70,80) -中等

  • 第5个分数段: 60 ≤ s c o r e < 70 , s c o r e ∈ [ 60 , 70 ) 60\le score\lt 70,score\in[60,70) 60score<70,score[60,70) -及格

  • 第6个分数段: 0 ≤ s c o r e < 60 , s c o r e ∈ [ 0 , 60 ) 0\le score\lt 60,score\in[0,60) 0score<60,score[0,60) -不及格

  • 第7个分数段: s c o r e < 0 , s c o r e ∈ [ − ∞ , 0 ) score\lt 0,score\in[-\infty,0) score<0,score[,0) – 超出范围

  • 总结:并列式多分支结构,优点是易于理解

方法二、采用嵌套式多分支结构评定成绩等级

  • 思路:从高分到低分来划分各个分数段
  • 总结:嵌套式多分支结构,优点是层次分明、效率高,但缺点是嵌套层次太多时显得很繁。

方法三、采用延拓式多分支结构评定成绩等级

  • 总结:延拓式多分支结构,优点是只有一层,并且效率高。希望同学们务必掌握这一种多分支处理方式。

方法四、采用开关式多分支结构评定成绩等级

  • 关键点在于将成绩变量取整之后再整除10,以便将各个分数段转换成离散的整数值,这样才能用开关式多分支结构来进行处理。
  • 总结:开关式多分支结构,优点是书写简洁,并且效率高,但缺点是只能针对离散型的情况进行处理。
  • 开关式多分支结构里的测试表达式,类型可以是整数、字符、甚至可以是字符串。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160651.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Redis面试题(一): Redis到底是多线程还是单线程?

    Redis面试题(一): Redis到底是多线程还是单线程?0.redis单线程问题单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。1.为什么说redis能够快速执行(1)绝大部分请求是纯粹的内存操作(非常快速)(2)采用单线程,避免了不必要的上下文切换和竞争条件(3)非阻塞IO-IO多路复用2.redis的内部实现 内部实现采用epoll,采用了epoll+自己…

  • Linux Samba PDC – Domain Model

    Linux Samba PDC – Domain Model

  • Redis之压缩列表ziplist

    Redis是基于内存的nosql,有些场景下为了节省内存redis会用“时间”换“空间”。ziplist就是很典型的例子。ziplist是list键、hash键以及zset键的底层实现之一(3.0之后list键已经不直接用ziplist和linkedlist作为底层实现了,取而代之的是quicklist)这些键的常规底层实现如下:list键:双向链表 hash键:字典di…

  • DB9 公头母头引脚定义及连接

    DB9 公头母头引脚定义及连接

    2021年11月16日
  • s3c2440启动过程分析

    s3c2440启动过程分析2440启动过程分析作者:王辉 2440启动过程算是一个难点,不太容易理解,而对于2440启动过程的理解,影响了后面裸机代码执行流程的分析,从而看出2440启动过程的重要性。 1 2440启动方式和启动方式选择在S3C2440的datasheet《S3C2440A_UserManual_Rev13.pdf》中搜索map,可以在第5章中搜索到下图。 从此

  • java 学生信息管理系统

    java 学生信息管理系统只设计了一部分全部的太多了。会慢慢更新增加。学生信息管理包括添加,删除,修改,查询,显示全部等具体结构如图在SQLServer2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言在sqlserver2005新建一个名为Student的数据库,在下面新建一个名为stu的表当然列名你可以随便写当然要有个学号啊。我的修改等等都是根据学号的

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号