本帖最后由 王龙彪 于 2012-7-21 02:37 编辑
感觉一个方法就搞定了,所以没有定义一个类来创建对象后再调用.
分别定义了当前高度的变量hight, 记录总长度的变量sum,记录最后一次落下后弹起高度的变量shoot
用一个for循环模拟球落下的过程
这里是输出的结果:
这里是代码:- //需求:100米落下的球,落地后跌回一半,求第10次落下时候,经过了多少米,反弹多高?
- public class BallTest
- {
- public static void main(String[] args)
- {
- getBall();
- }
-
- public static void getBall()
- {
- double hight = 100;//定义球的当前高度
- double step = 2;//球跌落后的高度每次减半
- double sum = 0;//记录总高度的变量
- double shoot = 0;//记录最后一次跌落后弹起的高度
-
- for(int x = 1; x <= 10; x++)//使用一个循环模拟球跌落的过程,并记录数据
- {
- if(x== 1)
- sum = hight;//第一次落地时
- else
- {
- hight /= step;//下一次跌落前的最高高度
- sum += hight * 2;
- }
-
- sop("这是第" + x + "次落地,落地时当前总高度为:" + sum);
- }
- shoot = hight;//最后一次跌落后弹起的高度
-
- sop("当第10次落下的时候,一共经过了:" + sum+ "米.");
- sop("第10次落下后,反弹了:" + shoot + "米.");
- }
- public static void sop(Object object)//一个方便打印的函数
- {
- System.out.println(object);
- }
- }
复制代码 |