A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黄小贝 高级黑马   /  2012-10-21 03:21  /  1143 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黄小贝 于 2012-10-21 03:22 编辑

饭后一道题,天天好心情~

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

这道题不难,没什么好说的~ 唯一注意的地方是要求的是 第十次落地时一共经过的路程,而不是第十次反弹到最高点时经过的路程



  1. package day5;

  2. /**
  3. * 一球从100米高度自由落下,每次落地后反跳回原高度的一半;
  4. * 再落下,求它在   第10次落地时,共经过多少米?第10次反弹多高?   
  5. * @author yellowbaby
  6. *
  7. */
  8. public class Test {
  9.         
  10.         private static Double sum = 0.0;//经过的总高度

  11.         public static void main(String[] args) {
  12.         
  13.                 Double height = getHeight(10,100.0);
  14.                
  15.                 System.out.println(height);
  16.                 System.out.println(sum);
  17.         }

  18.         /**
  19.          * 得到第 times 次反弹的高度
  20.          */
  21.         private static Double getHeight(int times,Double height) {
  22.                
  23.                 int i = 0;
  24.                 do {
  25.                         sum += height;
  26.                         height /= 2;
  27.                         sum += height;
  28.                         i++;
  29.                 } while (i < times);
  30.                
  31.                 sum -= height;
  32.                
  33.                 return height;
  34.         }
  35. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
韩军博 + 1

查看全部评分

2 个回复

倒序浏览
就像高中时候做题一样的感觉,爽
回复 使用道具 举报
让人回想起高中物理题
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马