前言提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
最近需要使用python设计一个项目,但是之前毫无学习经验,刚好学校开了一个python小课堂,跟着学一学。第一次课后布置了如下题目,现给出写程序时的思路及具体代码。
一、题目
二、设计思路
首先模拟投掷色子需要使用到random模块的randint函数,因此引入该函数。
from random import randint
接下来由于需要反复投掷色子,所以我们用到while语句。是否执行循环的条件是投掷次数和总点数。这里我们需要先对接下来要用到的变量进行定义。
# 定义变量 num = 0 result = 0 one = 0 two = 0 three = 0 four = 0 five = 0 six = 0 sum = 0
定义完变量后就可以开始写循环语句了。当投掷次数小于等于100及总点数小于等于300时,我们才执行循环也就是投掷色子。每次执行循环的时候都需要改变部分变量。投掷次数+1,总点数加上本次投掷的结果,与投掷结果数字相同的变量也加一,代表着该数字出现的次数。
# 设计循环语句,只有在投掷次数小于等于100及总点数小于等于300时执行投掷
while num <= 100 and sum <= 300:
num += 1
result = (randint(1, 6))
sum += result
match result:
case 1:
one += 1
case 2:
two += 1
case 3:
three += 1
case 4:
four += 1
case 5:
five += 1
case 6:
six += 1
if num <= 100 and sum <= 300:
continue
else:
break
最后我们输出结果。
# 输出投掷结果
print("共投掷", num, "次", "总点数为", sum)
print("点数1共出现", one, "次")
print("点数2共出现", two, "次")
print("点数3共出现", three, "次")
print("点数4共出现", four, "次")
print("点数5共出现", five, "次")
print("点数6共出现", six, "次")
完整代码只需要将各段拼接在一起即可。
三、演示结果
总结
以上就是这道题目的解题思路及具体代码。这道题目很简单,只要稍微理一理逻辑就可以很快做出来了。



