首页 > 编程语言 >面向对象程序设计——第3章 案例

面向对象程序设计——第3章 案例

时间:2024-08-06 16:53:05浏览次数:15  
标签:案例 用户 数值 面向对象 Num 程序设计 水仙花 输入

案例一 水仙花数

案例要求

【案例目标】 用户通过键盘输入一个整数值,判断该数值是否为“水仙花数”。

【相关解释】 “水仙花数”是指一个3位数,其各位数的三次方和等于该数本身。

例如:水仙花例如: 153是一个“水仙花数”,因为

153 = 1*1*1 + 5*5*5 + 3*3*3 = 1+125+27

【案例效果】本案例程序运行的结果如图

【具体要求】本案例的实现过程应满足以下要求。

1. 创建工程并配置环境
  • 限制1:工程取名SE_JAVA_EXP_E005

  • 限制2:创建包,取名cn.campsg.java.experiment。

  • 限制3:创建类,类名为DaffodilsNum。

2. 获取用户输入的数值

要求用户输入数值,提示语句:"请输入 0-1000 内的数字:"

3. 判断输入的数值是否合法

1)用户输入数值范围应为0~1000。

2)输入不合法,显示提示:

"输入的不是 0-1000 内的数字!"

4. 判断输入的数值是不是水仙花数

1)获取用户输入的数值的个位数。

2)获取用户输入的数值的十位数。

3)获取用户输入的数值的百位数。

4)分别计算各个位数的三次方值并求和。

5)根据水仙花数判断规则,判断用户输入的数值是不是水仙花数。

6)是水仙花数,打印:

用户输入的数值+"是水仙花数!"

7)不是水仙花数,打印:

用户输入的数值+"不是水仙花数!"

2. 实现思路与代码

【实现思路】本案例实现的参考思路如下。

1. 创建工程并配置环境

按实训要求创建工程并配置环境

2. 获取用户输入的数值

1)创建 Scanner对象,设置参数System.in:

提示

Scanner in = new Scanner (System.in);

2)调用Scanner的nextInt方法获取用户输入的数值。

3)调用 close方法关闭Scanner。

3. 判断输入的数值是否合法

1)如用户输入数值不在 0~1000 范围内,打印提示语句:

“输入的不是 0-1000 内的数字!”

2)退出程序。

提示

return
4. 判断输入的数值是不是水仙花数

1)获取用户输入的数值的个位数=数值%10。

2)获取用户输入的数值的十位数=数值/10%10。

3)获取用户输入的数值的百位数=数值/100

4)分别计算各个位数的三次方值并求和:(个位数*个位数*个位数) + (十位数*十位数*十位数) + (百位数*百位数*百位数)。

5. 判断计算结果与用户输入的数值是否相等

1)是水仙花数,打印:

用户输入的数值+"是水仙花数!"

2) 不是水仙花数,打印:

用户输入的数值+"不是水仙花数!"

package cn.campsg.java.experiment;
​
import java.util.Scanner;
​
public class DaffodilsNum {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入 0-1000 内的数字:");
        int Num = input.nextInt();
        input.close();
        if ((Num > 0) && (Num < 1000)) {
            int a = Num % 10;
            int b = Num / 10 % 10;
            int c = Num / 100;
            int Sum = a*a*a + b*b*b + c*c*c;
            if (Num == Sum) {
                System.out.println(Num + "是水仙花数!");
            }else {
                System.out.println(Num + "不是水仙花数!");
            }
        }else {
            System.out.println("输入的不是 0-1000 内的数字!");
        }
    }
​
}

案例二 闰年计算

1.案例要求

【案例目标】 用户通过键盘输入一个年份值,判断该年是否为闰年。

【相关解释】 “闰年”是指能被4整除却不能被100整除,或能被400整除的年份。 2024

例如:2018年不是闰年, 2012年是闰年。

【案例效果】 本案例程序运行的结果如图所示。

【具体要求】本案例的实现过程应满足以下要求。

1. 闰年条件

1)条件 1:每相隔4年为一个闰年。

2)条件2:相隔100年一定不是闰年。

3)条件 3:相隔 400年一定是闰年。

2. 创建工程并配置环境

1)限制1:工程取名SE_JAVA_EXP_E003。

2)限制2:创建包,取名

标签:案例,用户,数值,面向对象,Num,程序设计,水仙花,输入
From: https://blog.csdn.net/Z_Date/article/details/140956295

相关文章

  • 深圳大学-Java程序设计实验-常用集合类使用
    实验目的熟悉集合类的应用,熟悉String类的应用以及正则表达式的使用。实验内容1张三、李四等人是A社团成员,李四、王五等人是B社团成员,编写一个Java应用程序(要求使用集合类),输出参加A社团的人、参加B社团的人、以及同时参加两个社团的人。在报告中附上程序截图、完整的运行......
  • Java SE知识点六:面向对象之:多态
    1.多态的概念多态也是Java面向对象的三大要点之一,多态的概念通俗来讲就是一个事物的多种形态,让不同的对象去完成一个方法时会出现不同的状态。比如,猫吃饭和狗吃饭就是不同的状态,但用到的方法都是一样。2.实现多态2.1实现条件要实现多态需要遵循以下条件:必须是在......
  • 面向对象--方法
    目录1.方法的好处2.方法的定义和调用3.方法之间的关系4.方法里面的参数5.注意6.方法重载7.方法的局部变量1.方法的好处简化代码,提高代码复用性,一次编写多次调用2.方法的定义和调用一段具有独立功能的代码块,需要先定义才能调用方法定义格式:publicstaticvoidmain方法名(){......
  • 深圳大学-电信院-C程序设计实验-数组、函数、结构体的综合使用
    实验目的(1)进一步掌握数组的定义与使用;进一步掌握函数的定义和函数调用方法;(2)学习和掌握结构体的定义和使用方法;(3)进一步掌握C语言的编程方法;学习动画程序的基本设计思想和方法。实验内容本实验编写一个在控制台窗口中,在不考虑重力的条件下,模拟一组弹球在一个二......
  • APP逆向 day26unidbg下-pdd(anti)案例
    一.前言今天我们讲unidbg的下篇,也就是unidbg基础的最后一个部分,我们上节课也有补环境,比如补java环境,补安卓环境,这节课我们讲的肯定比这些都要难,我会给出一个之前讲过的案例,然后会讲一个全新的案例,pdd,这个里面的环境就更加难了,让我们接着往下看吧二.B站sign参数2.1回顾sign......
  • Python面向对象课程设计
    面向对象程序设计面向对象编程(Object-orientedProgramming,简称OOP),是一种封装代码的方法。面向对象中,常用术语包括:类:可以理解是一个模板,通过它可以创建出无数个具体实例。比如,前面编写的tortoise表示的只是乌龟这个物种,通过它可以创建出无数个实例来代表各种不同特征的乌龟(......
  • AI绘画最强SD(Stable Diffusion)玩法实操教学案例及商业变现项目分享
    AI绘画现在越来越火爆了,很多人无论大人小孩都在玩,还有的很多电商老板也在使用辅助生成产品主图和详情页,可以说是非常的实用。而其中最让人追捧和好评的就是SD(StableDiffusion)这款AI绘图软件了,StableDiffusion是一款基于深度学习的图像生成工具,它可以根据文本描述生成高质......
  • Android Camera close异常导致app的input ANR案例分析
    1.背景在日常的项目开发过程中,经常会收到用户或者测试同仁报过来的ANR(ApplicationNotResponse)的问题,本文结合作者的日常工作中遇到的典型案例,分享ANR的分析过程。ANR(‌ApplicationNotResponding)‌主要分为以下几种类型:‌Inputdispatchingtimedout:‌当输入事件(......
  • 反射内存卡应用案例
    飞机动力系统半实物仿真:在美国空军的相关应用中,涡轮发动机模型运行在RedhawkLinux软实时环境中,而转子模型则运行在Speedgoat硬实时环境里,两者之间通过反射内存卡来同步数据。通过转子动力学模型,用户能够灵活地调整发动机和发电机之间的功率与转速。特别是当有代表性的动力系......
  • 博卡会员通小程序功能案例分析
    博卡会员通小程序作为一款专为消费品行业设计的会员管理工具,其功能设计紧密围绕会员管理、用户体验提升及营销策略优化三大核心目标。以下是对其关键功能的案例分析:一、会员精细化管理用户画像构建功能描述:通过收集会员的基本信息(如姓名、性别、年龄等)、消费记录、行为数据等,......