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

import java.util.Scanner;

//题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
public class BallTest {
    public static void main(String[] args) {
        double firsthight;
        int n;
        Scanner in = new Scanner (System.in);//从键盘读取两个数据
        System.out.println("请输入从多少米落下:");
        firsthight = in.nextDouble();
        System.out.println("请输入第几次落下:");
        n = in.nextInt();
    System.out.println("从"+firsthight+"m"+"第"+n+"次落地经过的距离"+countTotalLong(n,firsthight)+"m");
    System.out.println("从"+firsthight+"m"+"第"+n+"次反弹高度"+countHeight(n,firsthight)+"m");
    }
    public static double countTotalLong(int n,double firsthight){//计算总的路径
        double totalLong =firsthight;
        for(int i = 0;i<n-1;i++){
            totalLong += firsthight/(double)(Math.pow(2,i));
        }
        return totalLong;
    }
    public static double countHeight(int n,double firsthight){ //计算每次反弹高度
        return firsthight/(double)(Math.pow(2,n));
    }
}
时间: 2024-10-08 11:02:08

问题:一球从某高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第n次落地时,共经过多少米?第n次反弹多高?的相关文章

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

/** * 一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? * */ public class Test2 { public static void main(String[] args) { double num = 100, sum = 0; for (int i = 0; i < 10; i++) { sum += num*2; num /= 2; } sum -= 100; System.out.println(

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

#include<iostream> using namespace std; int main() { float sum=0;//注意声明成浮点型 float n=100.0; for(int i=1;i<=10;i++) { sum+=n; n=n*0.5; } cout<<"第十次落下时,经过"<<sum<<"米"<<endl; cout<<"第十次反弹"<

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

题目:一球从100米高度自由落下, 每次落地后反跳回原高度的一半: 再落下,求它在第10次落地时, 共经过多少米?第10次反弹多高? /* * 思路  * height[] 100 50 25 12.5 6.25 //记录每一次的高度 * total 100+50 50+25 25+12.5 12.5+6.25记录总里程 */ public class 第十题小球落地反弹 { public static void main(String[] args) { /* * 思路 * height[]

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

package com.hanqi; public class ziyouluoxia { public static void main(String[] args) { // TODO 自动生成的方法存根 double sum1 = 0, sum2 = 0, hight = 100.0; for (int i = 0; i < 10; i++) { sum1 = sum1 + hight; // 显示了一下高度的变化 // System.out.print(hight); hight = h

c语言:一个球从 100 米高的自由落下,每次落地后反跳回原高度的一半

程序: #include <stdio.h> int main() { double h=100; double t = h/2; double s=0.0; int i; for (i=1;i<10;i++) { s=s+2*t; t=t/2;;   //第i+1次小球弹起的高度 } s=s+100;  //第i+1次落地时,共经过了s米 printf ("%lf\n",s); printf ("%lf\n",t); return 0; } 运行

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

n = int(input('落地的高度为:')) #ciShu = int(input('落地的次数:')) sum = 0 for ciShu in range(1,4): if ciShu==1: sum +=n; else: n /=2 sum += n*2 print(sum) print(n) 原文地址:https://www.cnblogs.com/xyg-zyx/p/9795173.html

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

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { float h = 100.0; float sum = 0.0; for (int i = 0; i < 10; i++) { sum += h; h = h/2.0 ; } printf("%f  %f\n\n",h,sum); } return 0; }

C语言:一个球从 100 米落下,每次落地后反跳回原一半,再落下,再反弹。求第10次高度?sum?

#include<stdio.h> int main() {    double max=100.0;  double sum=0;  int i=0;  for(i=1;i<10;i++)  {   max=max/2.0;   sum=sum+max*2;  }  printf("max=%lf \n",max);  printf("sum=%lf \n",sum);  return 0; }

一个球从100米高度自由落下,每次落地后反弹回原高度的一半; * 再落下,求在第几次之后反弹高度小于0.1米, * 并计算在这一次落地时共经过多少米?

package com.db2; /** * 一个球从100米高度自由落下,每次落地后反弹回原高度的一半: * 再落下,求在第几次之后反弹高度小于0.1米, * 并计算在这一次落地时共经过多少米? * * @author denny * */ public class Demo1 { static int count = 0; // 次数 static double sum = 0; // 总高度 public static void main(String[] args) { /* doubl