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;
}
相关推荐
-To be number.wan2 小时前
C++ 赋值运算符重载:深拷贝 vs 浅拷贝的生死线!
前端·c++
XXYBMOOO3 小时前
内核驱动开发与用户级驱动开发:深度对比与应用场景解析
linux·c++·驱动开发·嵌入式硬件·fpga开发·硬件工程
SoveTingღ7 小时前
【问题解析】我的客户端与服务器交互无响应了?
服务器·c++·qt·tcp
温宇飞7 小时前
内存异常
c++
挖矿大亨9 小时前
C++中深拷贝与浅拷贝的原理
开发语言·c++·算法
Bruce_kaizy10 小时前
c++图论——生成树之Kruskal&Prim算法
c++·算法·图论
雾岛听蓝11 小时前
C++:模拟实现string类
开发语言·c++
XFF不秃头11 小时前
力扣刷题笔记-合并区间
c++·笔记·算法·leetcode
编程之路,妙趣横生11 小时前
STL(七) unordered_set 与 unordered_map 基本用法 + 模拟实现
c++
寂柒11 小时前
c++--
c++