这道题怎么做啊,看一下我做对没有,谢谢啦,如果不对的话给我说一下正确答案
1个回答
展开全部
首先你要求的第十次落地经过的距离跟第十次反弹的高度关模陵闭系:
第十次落地经过的距离 = 第十次反弹高度 * 2;
在该方法中你获取的结果一直是int类型,即整数类型,但是实际情况在第四次弹起时,你的弹起高度就已经是浮点型了,就是旦裂小数,中间误差汪激很大。
所以综合上面的需求作为修改,应该是可以的
追问
那应该改成什么啊
追答
#include
main(){
float x,y=100;//x,y分别代表第十次经过的距离和第十次反弹的高度
for(int i=0;i<10;i++){
y/=2;//等价于y=y/2
x+=y*2;
}
x = x+100.0;
}
x表示10次弹跳所有经过的距离,y表示第十次反弹的高度
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询