题目 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
代码:
high<-200.
total<-100
for (i in 1:11){
high<-high/2
total<-total+high
print(paste0("这是第", i-1,"次的高度为:",high,"米"))
}
print(paste0 ("总长:",total,"米"))
输出结果:
[1] "这是第0次的高度为:100米"
[1] "这是第1次的高度为:50米"
[1] "这是第2次的高度为:25米"
[1] "这是第3次的高度为:12.5米"
[1] "这是第4次的高度为:6.25米"
[1] "这是第5次的高度为:3.125米"
[1] "这是第6次的高度为:1.5625米"
[1] "这是第7次的高度为:0.78125米"
[1] "这是第8次的高度为:0.390625米"
[1] "这是第9次的高度为:0.1953125米"
[1] "这是第10次的高度为:0.09765625米"
[1] "总长:299.90234375米"
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
程序分析按规则反向推断:猴子有一个桃子,他偷来一个桃子,觉得不够又偷来了与手上等量的桃子,一共偷了9天。
代码为:
peach=1
for( i in 1:9)
peach=(peach+1)*2
print(paste0 ("开始的时候有", peach,"个桃子"))
输出为:
[1] "开始的时候有1534个桃子"
网友评论