描述
一球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下。
编程计算气球在第10次落地时,共经过多少米? 第10次反弹多高?
输入输入一个整数h,表示球的初始高度。输出输出包含两行:
第1行:到球第10次落地时,一共经过的米数。
第2行:第10次弹跳的高度。
注意:结果可能是实数,结果用double类型保存。
提示:输出时不需要对精度特殊控制,用cout << ANSWER,或者printf("%g", ANSWER)即可。
样例输入
20
样例输出
59.9219 0.0195313
题意总结
已知球的初始高度h,每次落地后弹跳高度为原来h的一半,求第10次落地时经过的米数和第10次弹跳的高度
解题思路
定义浮点数变量a,再输入a,接着用for循环10次去计算落地的总米数和第10次弹跳高度,最后用c-a减去初始高度,打印输出结果
代码
#include<iostream> #include<cmath> using namespace std; int main(){ double a,b=0,c=0; cin>>a; b=a; for(int i=1;i<=10;i++){//循环10次 c+=b*2;//计算每次落地经过的米数 b=b/2;//计算每次落地的高度 } cout<<c-a<<endl; cout<<b; return 0; }
标签:10,20,落地,高度,弹跳,输入 From: https://www.cnblogs.com/9494pys/p/16601223.html