java小球落体问题_[Java 编程基本功] (五) 小球落体, 发奖金, 1,2,3,4 可以组成多少个数...
[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 可以组成多少个数...相关推荐
- java编译器jdk版本_以编程方式确定Java类的JDK编译版本
java编译器jdk版本 当需要确定使用哪个JDK版本来编译特定的Java .class文件时, 通常使用的方法是使用javap并在javap输出中查找列出的"主要版本". 我在我 ...
- java 柯里化_函数式编程(Java描述)——Java中的函数及其柯里化
本文继续上一篇的内容 在Java中,函数可以表现为一个普通的方法.一个lambda表达式,又或者方法引用,甚至是匿名类.本文不会介绍匿名类这种形式. 方法 Java中的方法,Java使用方法这一概念来 ...
- java 基础面试 英文_[Java面试] 面试java基础总结大全
原标题:[Java面试] 面试java基础总结大全 基础知识: 1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. ...
- java 字符串格式替换_[Java] - 格式字符串替换方法
Java 字符串格式替换方法有两种,一种是使用String.format(...),另一种是使用MessageFormat.format(...) 如下: import java.text.Messa ...
- java 内存泄露 书籍_[Java教程]一次艰难的内存泄露排查,BeanUtils 的锅
[Java教程]一次艰难的内存泄露排查,BeanUtils 的锅 0 2020-10-29 18:24:42 现象 通过jstat -gcutil pid 5000 ,发现fgc次数很多而且频繁,此时 ...
- java privatekey输出字符串_[Java教程]根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象_星空网...
根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象 2012-05-29 0 1.字符串生成公钥对象 PublicKey /** * 实例化公钥 * * @re ...
- java视、频_[java视频]感人故 事视 频网 站上那找~~~
感人故 事视 频网 站上那找~~~ 问题补充:感人故 事视 频网 站上那找~~~ ●呵呵,你问对人了,感人故事就去"新浪show",现在是新浪期下的网站,运行稳定,观看流畅,上传简 ...
- java 历遍 类_[Java] 遍历指定包名下所有的类(支持jar) | 学步园
项目需要,仅做记录. 支持包名下的子包名遍历,并使用Annotation(内注)来过滤一些不必要的内部类,提高命中精度. 通过Thread.currentThread().getContextClas ...
- java 图片宽高_[Java]获取图片高和宽
通过javax.imageio.ImageIO类中的read()函数读取的图片,存放在类java.awt.image.BufferedImage类中.调用BufferedImage类中的getWidt ...
最新文章
- linux 下串口编程VTIME和VMIN的设置
- 【控制】遗传算法(GA,Genetic Algorithm)及 Matlab 实现 代码详细版
- ajax原理 博客,AJAX工作基本原理
- git推送分支到远程分支
- php柱形图 数据sql,ThinkPHP 5.1 读取数据库中的图片
- #530. 「LibreOJ β Round #5」最小倍数 二分 + 数论
- 关于如何在Python中使用静态、类或抽象方法的权威指南
- php和windows对应,哪个.so文件可以用于windows系统中与.dll文件相对应的linux系统,以便将php连接到ms sql server...
- linux初始:命令行解释器(shell)、权限
- android 55
- hik中心服务器登录失败,蒲公英云平台登录失败解决方案
- maven项目jdk版本配置及常见错误Error:java: 无效的目标发行版: 8解决
- LCD/OLED显示产品从新品导入量产的线体认证策划
- 中国移动开发者大会PPT集萃(一):核心技术与应用开发实践
- java动态时钟_Java实现动态数字时钟
- C++ 判断矩形是否相交
- win10计算机管理里找不到设备管理器的解决方法
- 答疑解惑 | Linux GNU C 与 ANSI C 的区别
- CloudBees程序员就如何开发可大规模扩展的HTTP服务器进行演讲
- 视频压缩【亲测可用】
热门文章
- 如何改变computed执行_皓儿日记2019-11-09 《执行力》读书笔记
- 达梦数据库如何把EXCEL的数据导入到表中?
- 【前端】Vue+Element UI案例:通用后台管理系统-用户管理:Table表格增删查改、Pagination分页、搜索框
- QGC编译报错error C2220: 警告被视为错误 最佳解决方法
- 鸿蒙系统手机一览表,四款华为鸿蒙系统手机推荐,后续可直接升级鸿蒙2.0
- 介绍一个开源博客项目并部署到Nginx服务器
- 黑马SpringBoot --基础篇
- Leetcode——226. 翻转二叉树
- 2017年6月Mac OS 10.11安装文档
- JAVA利用第三方平台发送短信验证码