我正在努力理解我正在做的这个测试练习。我编写了下面的代码并执行它,但是结果并不是我真正想要的。第一个if语句应该打印日期或天数,具体取决于所传递的天数。最后的打印,解决方案,应该打印的日子加上文字之间的空格,然而,我不能做到这一点。提前感谢!
well_height = 125
daily_distance = 30
nightly_distance = 20
snail_position = 0
notEscaped = True
# Create a variable days to keep
# count of the days that pass until the snail escapes the well
days = 0
fullDaylydist = daily_distance - nightly_distance
while snail_position < well_height:
if days <= 1:
print(str(days) + " day gone")
else:
print(str(days) + " days gone")
snail_position += fullDaylydist
if snail_position < well_height:
days += 1
# Print the solution.
else:
print(str(days) + " days and I am out from the well!")发布于 2020-10-03 17:06:45
这里的诀窍是蜗牛白天向前移动,晚上向后移动。蜗牛在睡觉前一天会到达顶端。
well_height = 125
daily_distance = 30
nightly_distance = 20
snail_position = 0
notEscaped = True
days = 1
snail_position = 0
fullDaylydist = daily_distance - nightly_distance # assumes full day
while snail_position < well_height - daily_distance: # check if snail reaches top during day
if days <= 1:
print(str(days) + " day gone")
else:
print(str(days) + " days gone")
snail_position += fullDaylydist
if snail_position < well_height:
days += 1
# Loop done, Print the solution.
print(str(days) + " days and I am out from the well!") # last day输出
1 day gone
2 days gone
3 days gone
4 days gone
5 days gone
6 days gone
7 days gone
8 days gone
9 days gone
10 days gone
11 days and I am out from the well!发布于 2020-10-03 16:42:53
第一个if小于或等于一天。您的意思是这个,还是应该说大于或等于>=
https://stackoverflow.com/questions/64186446
复制相似问题