就像在上一个技术博客中一样,我们为游戏创建了游戏板,因此现在是时候进行冲突了。 但是在开始比赛之前,我们只看一下我们董事会的实际状况,我们已经为董事会编写了代码,如果您有任何疑问,可以访问名为“ Into the game.part part”的博客,该博客提供了参考。下面:
进入游戏..第一部分
因此,让我们首先快速查看我给您的上一个问题的解决方案,我给您绘制了三张图纸,
medium.com
在这里,我附加了视频的链接,该链接将向您展示调用函数时龟窗口如何弹出。 它与其他图形界面有很大的不同,它的显示方式也非常有趣,因此我想分享这个小视频。 视频中我的函数名和文件名均为“ g”。
我使用了名为Free Screen Recorder的软件的试用版,因此可见水印(www.thundershare.net),它与我们的代码无关。

现在我们可以出发了,所以这是我们比赛必须遵循的说明:
该游戏将有2位玩家,分别为Player 1和Player 2。
播放器1着色为绿色,而播放器2着色为红色。
每个玩家将有机会掷骰子,并根据数字前进。
终点设置为200点距离,因此第一个行驶200公里的距离将获胜。
直到其中一个到达终点,两位玩家都将掷骰子。
从最后一点很明显,我们的循环应该一直运行,并且只有当其中一个循环的距离超过200时才会停止。因此,运行无限循环的一种方法是:
如果在while条件下放置任何非零数字,则不仅为1,我们的循环还将运行无数次。 现在,由于我们的循环不断运行,如何停止它? 简单的答案是break语句,与我们在C / C ++中使用的语句相同。 break语句只会打破循环,我们可以从循环中获得比赛的胜利者。 这是我们程序的概述,现在让我们逐步编码并确定我们的获胜者。

因此,基本上,我们必须做5件事-从用户那里得到输入(相当于掷骰子)-生成一个随机数-将玩家向前移动该数位-计算距离-如果距离<200,则继续循环,否则该人是赢家。
- 用户的输入仅是“输入”键。 用户只需要按回车键,数字就会打印出来,说明您输入了“ X”。 我们可以通过以下方式检查我们的输入是否为回车键:
k =输入()
如果(k ==”)
我们这里没有检查任何错误的输入,因为它是一个基本级别的程序。 我们可以稍后进行所有这些改进,以获得更高效的代码。
2.要生成随机数,我们必须首先导入random,然后可以使用名为randint(a,b)的内置函数来获取随机数:
进口随机;
a = random.randint(1,6)
它将生成与骰子相同的1到6之间的随机数。
3.现在我们必须将玩家向前移动该距离,但是在乌龟飞机上,距离1到6很小。 因此,我们将随机数乘以10,然后将乌龟向前移动该数以使其可见:
turtle.fd(a * 10)
4.为了计算距离,我们将为每个玩家将两个变量初始化为0。 然后根据随机数,我们将继续增加距离:
s = 0,t = 0
s = s +(a * 10)
t = t +(b * 10)
5.现在我们只需要检查距离总和是否大于200,如果大于,则该玩家为赢家。 优胜者的名字应该被打印并且程序应该结束,否则整个过程将重复一次。
如果(s> 200):
打印(“玩家1获胜”)
打破;
因此,通过组合所有语句并将它们放入while循环中,我们的程序将如下所示:

因此,谁将是赢家,请点击下面的链接,找出谁赢得了这场比赛的第一场比赛。 您可以添加名称,输入条件,可以更改音轨等。我刚刚给了您速度,现在由您决定是加速还是停止,继续尝试,请检查视频,然后始终保持编码…