解题思路:
建立数学模型。分析下落的过程,把初始的高度看作起点,反弹的高度看作终点,反弹高度是原高度的1/2。
那么把初始高度落下,到反弹结束看作一次完整的过程。经历的米数是原初始高度的1.5倍。
将一次完整的过程进行拆分
1.一次完整的初始高度(下落至地面!!!)
2.反弹0.5倍的初始高度。
模型建立完毕,以这个为思想,审题,第n次落地时,经历的米数应该是完整的n次下落过程,减去最后反弹的高度。
注意事项:
申请题意,是第n次落地时,落地时,落地时(重要事情说三遍)经历过的米数。
容易忽略经历的米数包括反弹的米数。
参考代码:
#include<stdio.h> void main() { int n,i; //n是次数 float m,sum=0.0; //m是初始高度,sum是经历米数(这里一定要初始化经历米数,不然会报错) scanf("%f%d",&m,&n); for(i=1;i<=n;i++){ sum=sum+m; //拆分完整过程中的第一步,下落至地面 m=m/2; //计算反弹的高度,同时覆盖为下一次完整过程的初始高度 sum=sum+m; //拆分完整过程中的第二步,下落至地面 } printf("%0.2lf %0.2lf\n",m,sum-m); //题目说落地时的米数,所以减去最后的反弹高度 }
该过程注重建模思想,代码仅供参考。
0.0分
1 人评分
奖学金 (C++代码)浏览:2053 |
Pascal三角 (C语言代码)浏览:1252 |
简单的a+b (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:701 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:732 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:956 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:573 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:580 |
核桃的数量 (C语言代码)浏览:726 |
字符串比较 (C语言代码)浏览:770 |