解题思路:
代码已经很清晰明了了,这里解释一下为什么循环后需要减去最后的高度m
假设一组数据是 m:1000 n:1 ,
结合下面的代码, 如果不减去 最后的m
结果是 : 500 ,1500
小球的状态是, 落下,然后弹上来
这是不符合题意的,
一次自由下落是从开始到落下,所以这里的代码需要减去最后弹上来的高度。
注意事项:
参考代码:
#include <stdio.h> int main() { double m,n; double res = 0; scanf("%lf%lf",&m,&n); for( int i=0;i<n;i++) { res+=m; m/=2; res+=m; } res-=m; printf("%.2lf %.2lf",m,res); }
0.0分
0 人评分
C二级辅导-进制转换 (C语言代码)浏览:514 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:703 |
母牛的故事 (C语言代码)浏览:671 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:653 |
买不到的数目 (C++代码)浏览:868 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:768 |
上车人数 (C语言代码)浏览:781 |
最小公倍数 (C语言代码)浏览:863 |
Pascal三角 (C语言代码)格式错误浏览:521 |
兰顿蚂蚁 (C++代码)浏览:1049 |