[Java 编程基本功] (五) 小球落体, 发奖金, 1,2,3,4 可以组成多少个数

第十三题

一球从 100 米高度自由落下, 每次落地后反跳回原高度的一半; 再落下, 求它在第 10 次落地时, 共经过多少米? 第 10 次反弹多高?

思路:

小球落到地上再反弹到原高度的一半视为一次下落的过程, 第十次落地时, 完成了 9 次落地再反弹的过程.

代码:publicclassBall{

publicstaticvoidmain(String[]args){

//h 记录球的初始高度

doubleh=100;

//up 记录小球反弹的距离

doubleup=0;

//down 记录小球下落的距离

doubledown=0;

for(inti=1;i<10;i++){

down=down+h;

up=up+h/2;

h=h/2;

}

System.out.println("10 次落地共经过多少米"+(down+up+h));

System.out.println("第 10 次反弹高度"+h/2);

}

}

这样子, 代码是不是就比较容易理解了呢?

咱们的 Java 毕竟是一门面相对象的语言, 所以咱们来玩点花样, 用面相对象的方式来解决这个问题, 嘿嘿我真是机智

面相对象的方式:

一球从 100 米高度自由落下, 每次落地后反跳回原高度的一半; 再落下, 求它在第 10 次落地时, 共经过多少米? 第 10 次反弹多高?

先来写一个小球的实体类:

代码:publicclassBall{

doubleheight;

doublesum;

publicBall(doubleheight){

this.height=height;

sum=0.0;

}

publicvoidfall(){

sum=sum+height;

}

publicvoidbound(){

height=height/2;

sum=sum+height;

}

@Override

publicStringtoString(){

return"Ball [高度"+height+", 经过的路程"+sum+"]";

}

}

现在我们另外在写一个代码来调用这个代码:publicclassBallTest{

publicstaticvoidmain(String[]args){

//new 一个 1 小球对象

Ballball=newBall(100);

// 小球完成 9 次落地反弹

for(inti=1;i<10;i++){

ball.fall();

ball.bound();

}

// 第十次落地时的距离

ball.fall();

System.out.println(ball);

// 反弹的高度

ball.bound();

System.out.println("小球的高度为:"+ball.height);

}

}

效果图:

image

当然重点是第一种方式, 第二种面相对象的方式, 现在看不懂也没关系, 我们一点一点来. 自己可以去尝试一下, 但是千万不要知识中毒, 我们就是锻炼一下这种面相对象的思想而已~

第十四题

有 1,2,3,4 四个数字, 能组成多少个互不相同且无重复数字的三位数? 都是多少?

思路:

我是没有别的想法, 就用穷举法吧 (小伙伴们有好方法欢迎留言谈论哈)

代码:publicclassTest2{

publicstaticvoidmain(String[]args){

intcount=0;

for(intx=1;x<5;x++){

for(inty=1;y<5;y++){

for(intz=1;z<5;z++){

if(x!=y&&x!=z&&y!=z){

count++;

System.out.println(x*100+y*10+z);

}

}

}

}

System.out.println("共有"+count+"个三位数");

}

}

第十五题

企业发放的奖金根据利润提成. 利润低于或等于 10 万元时, 奖金可提 10%; 利润高于 10 万元, 低于 20 万元时, 低于 10 万元的部分按 10% 提成, 高于 10 万元的部分, 可提成 7.5%;20 万到 40 万之间时, 高于 20 万元的部分, 可提成 5%;40 万到 60 万之间时高于 40 万元的部分, 可提成 3%;60 万到 100 万之间时, 高于 60 万元的部分, 可提成 1.5%, 高于 100 万元时, 超过 100 万元的部分按 1% 提成, 从键盘输入当月利润, 求应发放奖金总数?

代码:importjava.util.Scanner;

publicclassBonus{

publicstaticvoidmain(String[]args){

doublex=0,y=0;

System.out.println("请输入当前利润 (单位: 万)");

Scannerin=newScanner(System.in);

while(in.hasNext()){

x=in.nextDouble();

if(x>=0&&x<=10){

y=x*0.1;

}elseif(x>10&&x<=20){

y=10*0.1+(x-10)*0.075;

}elseif(x>20&&x<=40){

y=10*0.1+10*0.075+(x-20)*0.05;

}elseif(x>40&&x<=60){

y=10*0.1+10*0.075+20*0.05+(x-40)*0.03;

}elseif(x>60&&x<=100){

y=10*0.1+10*0.075+20*0.05+20*0.03+(x-60)*0.015;

}elseif(x>100){

y=10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(x-100)*0.01;

}

System.out.println("应发放的奖金数"+y+"万");

}

}

}

来源: http://www.jianshu.com/p/2e55851340dc

java小球落体问题_[Java 编程基本功] (五) 小球落体, 发奖金, 1,2,3,4 可以组成多少个数...相关推荐

  1. java编译器jdk版本_以编程方式确定Java类的JDK编译版本

    java编译器jdk版本 当需要确定使用哪个JDK版本来编译特定的Java .class文件时, 通常使用的方法是使用javap并在javap输出中查找列出的"主要版本". 我在我 ...

  2. java 柯里化_函数式编程(Java描述)——Java中的函数及其柯里化

    本文继续上一篇的内容 在Java中,函数可以表现为一个普通的方法.一个lambda表达式,又或者方法引用,甚至是匿名类.本文不会介绍匿名类这种形式. 方法 Java中的方法,Java使用方法这一概念来 ...

  3. java 基础面试 英文_[Java面试] 面试java基础总结大全

    原标题:[Java面试] 面试java基础总结大全 基础知识: 1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. ...

  4. java 字符串格式替换_[Java] - 格式字符串替换方法

    Java 字符串格式替换方法有两种,一种是使用String.format(...),另一种是使用MessageFormat.format(...) 如下: import java.text.Messa ...

  5. java 内存泄露 书籍_[Java教程]一次艰难的内存泄露排查,BeanUtils 的锅

    [Java教程]一次艰难的内存泄露排查,BeanUtils 的锅 0 2020-10-29 18:24:42 现象 通过jstat -gcutil pid 5000 ,发现fgc次数很多而且频繁,此时 ...

  6. java privatekey输出字符串_[Java教程]根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象_星空网...

    根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象 2012-05-29 0 1.字符串生成公钥对象 PublicKey /** * 实例化公钥 * * @re ...

  7. java视、频_[java视频]感人故 事视 频网 站上那找~~~

    感人故 事视 频网 站上那找~~~ 问题补充:感人故 事视 频网 站上那找~~~ ●呵呵,你问对人了,感人故事就去"新浪show",现在是新浪期下的网站,运行稳定,观看流畅,上传简 ...

  8. java 历遍 类_[Java] 遍历指定包名下所有的类(支持jar) | 学步园

    项目需要,仅做记录. 支持包名下的子包名遍历,并使用Annotation(内注)来过滤一些不必要的内部类,提高命中精度. 通过Thread.currentThread().getContextClas ...

  9. java 图片宽高_[Java]获取图片高和宽

    通过javax.imageio.ImageIO类中的read()函数读取的图片,存放在类java.awt.image.BufferedImage类中.调用BufferedImage类中的getWidt ...

最新文章

  1. [云炬创业基础笔记]第十一章创业计划书测试1
  2. 贪心 - Dota2 参议院
  3. sounds speech_speech sounds
  4. javascript 嵌入python_通过Python将区块链数据嵌入Javascript,这是正确的方法吗?
  5. 全国首个人工智能专业,怎么学?
  6. AspectJ声明式事务配置
  7. 利用泛型与反射更新实体(ADO.NET Entity Framework)
  8. scrollTop clientHeight
  9. 01-unity下载与安装
  10. ipad mini2 12.5.4成功降级 10.3.3
  11. 蚂蚁金服褚霸:敲最牛的代码,骑最野的车
  12. 阶乘的0 【南阳 oj 题目84】
  13. 达梦数据库ZYJ实例安装初始化
  14. notifier通知链机制
  15. Pdf 插入图片 | 指定位置插入图片 不改变原格式 直接操作
  16. python怎样删除某一行_python删除某一行
  17. 数据库DevOps:我们如何提供安全、稳定、高效的研发全自助数据库服务-iDB/DMS企业版
  18. TFT显示模组有什么功能
  19. 这些java基础编程练习题你都会了吗?
  20. 如何解决word2019转换为word2003后,公式变成图片问题

热门文章

  1. Linux下8723be网卡,Ubuntu 12.04 安装RTL8723BE无线网卡驱动
  2. 二叉树的结构特点及性质
  3. 电子学会 2020年6月 青少年软件编程Python编程等级考试一级真题解析(选择题+判断题+编程题)
  4. 【jvm我能讲两小时056】说说Parallel old收集器的特点以及使用场景?
  5. matlab自动运行,自动运行matlab的方法步骤
  6. Cannot add or update a child row: a foreign key constraint fails都有哪些原因
  7. 在python终端中打印颜色的3中方式(python3经典编程案例)
  8. win10 java模拟鼠标_[pc玩家]如何在Windows10中用键盘控制鼠标光标
  9. linux d14 Apache、 Vsftpd
  10. 【UML】软件设计说明书 (完结)