CPP17 计算小球走过的路程和反弹高度

描述

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

输入描述:

输入小球下落的高度和落地的次数(先输入小球初始高度再输入反弹次数)

输出描述:

输出小球第 n 次 落地时经过的距离和第 n 次反弹的高度(保留小数点后1位)

示例1

输入:

复制代码
100 1

输出:

复制代码
100.0 50.0

示例2

输入:

复制代码
100 3

输出:

复制代码
250.0 12.5

把第一段下落抽出来,小球到结束就是一个循环了

见代码

cpp 复制代码
#include <iostream>
#include <iomanip>
#include<cmath>
using namespace std;

int main() {

    // 下落的高度和落地的次数
    double h;
    int n;

    cin >> h;
    cin >> n;

    // write your code here......
    double sum=0,s=0;
    for(int i=1;i<=n;i++){
        if (i==1) sum+=h;
        else sum+=2*s;
        s=h/pow(2,i);
        
    }
    cout<<fixed<<setprecision(1)<<sum<<" "<<s;
    return 0;
}
相关推荐
库克克1 小时前
【C++】set 与multiset
开发语言·c++
Mortalbreeze2 小时前
深入 Linux Socket 编程:端口号、网络字节序与 struct sockaddr 详解
linux·服务器·网络·c++
繁星蓝雨3 小时前
C++设计原理——异常处理
java·c++·异常处理·noexcept·throw·try catch
Kurisu_红莉栖3 小时前
关于相关问题的自我回答
c++
hansang_IR3 小时前
【题解】[AGC020E] Encoding Subsets
c++·算法·dp
我不管我就要叫小猪4 小时前
C/C++----命名空间
c语言·开发语言·c++
无忧.芙桃5 小时前
数据结构之堆
c语言·数据结构·c++·算法·
2301_777998345 小时前
Linux线程控制——从线程创建到线程分离(第三部分:线程等待 pthread_join)
linux·运维·服务器·c语言·c++
醉城夜风~6 小时前
C++模板详解:从基础到高级全面解析
java·开发语言·c++
RuiZN6 小时前
Muduo---Channel类
运维·服务器·c++