一、明确开发工具与游戏规则
选择pycharm2020.2.3和python3.7作为开发工具和语言进行代码编写。
按照课程设计要求,对已有的游戏规则进一步明确:距离G最远的同学存在多位时,这些同学均减两分;距离G最近的同学存在多位时,这些同学均加N分。
二、需求分析与界面设计
1、需求分析
(1)为用户提供便利的输入界面。采用图形化界面,利用鼠标交互。
2、界面设计
(1)右下角设计退出游戏界面,由用户决定何时退出游戏。
(2)左下角“下载G值”按钮可以下载截至当前游戏轮数的G值,并以折线图图片形式保存。
(3)第一个输入框输入参与游戏的人数,界面框显示游戏论数。下方输入框依次输入每位同学的数字,输入时有检错机制。输入完成后以matplotlib.pyplot库提供的plot()和show()函数绘制G值折线图。
三、GoldenPoint类属性、函数及全局属性、函数说明
全局变量
N:参与游戏的人数
全局函数
avg(List):返回列表List的平均值,List元素必须为数字。
GoldenPoint类属性
self.N:参与游戏的人数
self.scores_of_students:同学得分
self.inputs:每轮输入结果
self.times:游戏论数
self.Gs:每轮游戏的G值
GoldenPoint类函数
input(self, inputs_of_students):得到每一轮游戏的输入,并计算该轮G值。
def find_closest_input(self):找到距离G值最近的同学索引,返回索引列表。
def find_farthest_input(self):找到距离G值最远的同学索引,返回索引列表。
def update_scores(self):每轮游戏后更新分数。
本文介绍了一个使用Python开发的游戏项目,详细讲述了开发工具的选择、游戏规则的确立、需求分析过程、界面设计思路以及核心代码实现。重点包括GoldenPoint类的设计与实现,通过图形化界面输入玩家数据并动态展示游戏进程。
2421

被折叠的 条评论
为什么被折叠?



