一条毛毛虫,每天长大一倍,30天能长到20厘米,问长到5厘米时要用多少天?
长到5厘米时要用28天。
根据题意,一条毛毛虫,每天长大一倍,30天能长到20厘米,
那么第29天长到20/2=10厘米,
第28天长到10/2=5厘米
所以长到5厘米时要用28天。
计算思路
此类问题,不知晓初始值的情况下,可以用倒过来计算的方法。
以本题为例,无法从第一天算起,那么从第30天往回算,
从前往后是乘法,从后往前就是除法。
用第三十天的20厘米除以二再除以二就得到5厘米,
即第28天是5厘米。
除法的运算法则
(1)从被除数的高位除起;
(2)除数是几位数,就先看被除数的前几位,如果不够除,就要多看一位;
(3)除到哪一位就要把商写在哪一位上面;
(4)每次除得的余数必须比除数小;
(5)求出商的最高位后如果被除数的哪一位上不够商1就在哪一位上写0;
长到5厘米时要用28天。
根据题意,一条毛毛虫,每天长大一倍,30天能长到20厘米,
那么第29天长到20/2=10厘米,
第28天长到10/2=5厘米
所以长到5厘米时要用28天。
扩展资料:
此类问题,不知晓初始值的情况下,可以用倒过来计算的方法。
以本题为例,无法从第一天算起,那么从第30天往回算,
从前往后是乘法,从后往前就是除法。
用第三十天的20厘米除以二再除以二就得到5厘米,
即第28天是5厘米。
除法的运算法则
(1)从被除数的高位除起;
(2)除数是几位数,就先看被除数的前几位,如果不够除,就要多看一位;
(3)除到哪一位就要把商写在哪一位上面;
(4)每次除得的余数必须比除数小;
(5)求出商的最高位后如果被除数的哪一位上不够商1就在哪一位上写0;
倒推,30天20厘米,29天10厘米,28天5厘米
请点采纳,谢谢
2022-04-10
day = 30
length =20
# 每天涨两倍
# 计算初始长度
# 最终长度 = 初始长度乘以2的(天数减一的次方)
begin = length / (2**(day - 1))
# 5 = begin * 2**result
result = math.log(5/begin,2)+1
print(int(result))
# 结果是28