解题思路:
反弹实例 假设起始从100米处下降,则 第一次,反弹高度为50,经过100米。 第二次,反弹高度为25,经过100+50+50=200米(下降100米+弹回50米+下落50米) 第三次,反弹高度为12.5,经过100+50+50+25+25=250米 (下降100米+弹回50米+下落50米+弹回25米+下落25米) 所以利用循环构建反弹模型,sum记和
注意事项:
核心代码,求路程和 while(n--){ sum+=m/2*3; //小球每次从下落到弹起一共的路程 m=m/2; } 最后实际路程=sum-m 因为最后一次并未弹起
参考代码:
#include"iostream" #include"cstdio" using namespace std; int main(){ int n; double m,sum=0; cin>>m>>n; while(n--){ sum+=m/2*3; m=m/2; } printf("%.2lf %.2lf\n",m,sum-m); return 0; }
0.0分
6 人评分
点我有惊喜!你懂得!浏览:1376 |
输出九九乘法表 (C语言代码)浏览:546 |
C语言程序设计教程(第三版)课后习题11.11 (C语言代码)浏览:761 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:695 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:646 |
【偶数求和】 (C++代码)浏览:702 |
简单的a+b (C语言代码)浏览:519 |
最小公倍数 (C语言代码)浏览:978 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:520 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:478 |