☰
20:球弹跳高度的计算
2026/10/16 1:43:08 网站建设 项目流程
/** * 题目名称:球弹跳高度的计算 <p> * 题目来源:http://noi.openjudge.cn/ch0105/20/ <p> * 程序功能:计算气球在指定落地次数时经过的总距离,以及最后一次落地后反弹的高度 * * @author 潘磊,just_panlei@just.edu.cn * @version 1.0 */importjava.util.Scanner;publicclassMain{/** * 返回指定初始高度和落地次数条件下,气球经过的总距离。 * * @param height 指定初始高度。 * @param n 指定落地次数。 * @return 气球从height高度落下,第n次落地时经过的总距离。 */publicdoubledistance(doubleheight,intn){doubleans=height;// 气球第n次落地时经过的总距离,初始为第一次落地时经过的距离/* 从第二次落地依次遍历到第n次落地 */for(inti=2;i<=n;i++){ans+=height;// 累加当次落地时经过的距离height/=2;// 下一次落地前的初始高度}returnans;}/** * 返回指定初始高度和落地次数条件下,气球最后一次落地后反弹的高度。 * * @param height 指定初始高度。 * @param n 指定落地次数。 * @return 球从height高度落下,第n次落地后反弹的高度。 */publicdoublerebound(doubleheight,intn){doubleans=height/2;// 球第n次反弹的高度,初始为第一次反弹的高度/* 从第二次反弹依次遍历到第n次反弹 */for(inti=2;i<=n;i++){ans/=2;// 当次反弹的高度是上一次反弹高度的一半}returnans;}publicstaticvoidmain(String[]args){Maincall=newMain();Scannerinput=newScanner(System.in);intheight=input.nextInt();System.out.printf("%g\n%g",call.distance(height,10),call.rebound(height,10));}}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询