我的代码:
import math
import random
while True:
fwd= random.randint(2,20)
bkwd= random.randint(2,fwd)
total=random.randint(10,85)
f= 0
b = 0
t= 0
if bkwd > fwd:
break
while total > 0:
f = 0
while fwd > f:
if total > 0:
print("F", end="")
f=f+1
t=t+1
total=total-1
else:
f = fwd
b = 0
while bkwd > b:
if total > 0:
print("B", end="")
t=t-1
b=b+1
total=total-1
else:
b = bkwd
if f > total:
break
print(" ",t, "steps from the start")
#I need help here printing the right amount of total steps
print("Forward:", f, "Backward:", b, "Total:", )
我的指示是:一个人向前走随机数量的步数,然后向后走不同的随机数量的步数。
随机步长在2到20之间前进的步数总是大于后退的步数这种向前/向后的随机动作一遍又一遍地重复动作是一致的(前进的步数在整个动作中保持不变,后退的步数在整个动作中保持不变)在完成一定的总步数后,这个人被告知停止,并将从他们开始的地方向前走一定的步数。
随机生成的总步数将在10到85之间你正在编写一个程序来模拟人的动作。
显示该动作和他从起始位置结束的步数。例如:
如果程序生成的前进步数为4,后退步数为2,总步数为13,程序将显示:FFFFBBFFFFBBF = 5步从开始如果程序生成的前进步数为5,后退步数为3,总步数为16,则程序将显示FFFFFBBBFFFFFBBB =从开始的4个步骤
一方面,bkwd = random.randint(2,fwd)
将在2<=n<=fwd
之间生成一个数字,而您想要的是2<=n<=fwd-1
。
要回答您的问题,您只需要添加一个新变量来跟踪所采取的总步数。也许叫它steps_taken
?每走一步,你应该增加这个计数器一次。