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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hsx500 中级黑马   /  2015-5-12 11:11  /  1610 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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

13 个回复

倒序浏览
对于这道题,你列好解题公式,然后用java就会做剩下的事情。。。
回复 使用道具 举报
这个就是数学问题,公式列出来,代码很简单,感觉我写的有点繁琐了,不知是否有更简单的
  1. import java.util.Scanner;
  2. public class Falling {
  3.         public static void main(String[] args) {
  4.                 //键盘录入想获取的小球落地次数
  5.                 Scanner sc=new Scanner(System.in);
  6.                 System.out.println("请输入小球的落地次数:");
  7.                 int count=sc.nextInt();
  8.                 //建立数组存放每次小球落地后反弹高度
  9.                 double [] high=new double[count+1];
  10.                 //第一次落地经历路程为单程,首次高度为100米
  11.                 high[0]=100;
  12.                 double sum=high[0];
  13.                 high[1]=0.5*high[0];
  14.                 //从第二次落地开始用循环计算每次弹起高度,并累加路程
  15.                 for(int x=2;x<high.length;x++){
  16.                         high[x]=0.5*high[x-1];
  17.                         sum+=2*high[x-1];
  18.                 }
  19.                 System.out.println("小球第"+count+"次落地,后弹起高度:"+high[count]);
  20.                 System.out.println("所经历路程:"+sum+"米");
  21.         }
  22. }
复制代码
回复 使用道具 举报
数学题有助于训练你的思维,对于你设计程序的思路有帮助。
回复 使用道具 举报
  1.     float s= 0
  2.     float h=100;
  3.     int count;
  4. for(int i =0;i<10;i++)
  5. {
  6.     s = s+h;
  7.     count++;
  8.     h = h/2;
  9.     s = s+h;
  10. }
  11.     s.o.p(s,h);

  12. //智商增加1点
  13.    
复制代码
回复 使用道具 举报
训练你的逻辑思维
回复 使用道具 举报
只能说对于学没什么帮助,但是对于思维肯定是有帮助的
回复 使用道具 举报
Mr7952 中级黑马 2015-5-12 16:56:39
8#
对于思维有帮助吧
回复 使用道具 举报
训练逻辑思维吗?数学和算法联系挺大的
回复 使用道具 举报
学数学锻炼你的逻辑思维,一般来说数学好的人学编程没啥问题
回复 使用道具 举报
可能吧》。。。
回复 使用道具 举报
学好数学有助于锻炼思维
回复 使用道具 举报
我之前也在考录这个题
回复 使用道具 举报
你可以看看C语言描述的数据结构
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马