目的:

1.python程序阅读理解

2.学习python编码风格指南中译版,改进python程序

3.设计游戏规则,使得慈善事业可持续。

step1: fork老师的仓库

step2: clone到本地,修改后push到远程仓库

接下来进行代码的修改

运行出现错误

接着打开cmd

接着输入

pip3.6 install numpy

pip3.6 install matplotlib

无法解决此问题,不能成功运行,跳过
代码规范化
1 #!/usr/bin/env python32 # -*- coding: utf-8 -*-3 import random4 import numpy as np5 import matplotlib.pyplot as plt6 from matplotlib import mlab7 from matplotlib import rcParams8 9
10 # 初始参数设置
11 Box_sum =500         # 箱子中剩余硬币数量,初始值
12 People_Flag= random.randint(1,10)       # flag 模拟人们取硬币或放硬币的概率 1~10
13 Threshold = 2.5        #  阈值,可调: 1~Threshold 为取硬币,Threshold+1 ~10 为放硬币
14 Max_TakeCoin=5       #  最多可取硬币数量
15 Max_DonateCoin=1     #  最多可放硬币数量
16
17 delata=0                # 取、放硬币数量
18 Box_per_remain= [500]   # 每次箱子中硬币余额,list
19
20
21 # 算法模拟
22 for x in range(1,5000):  # 循环次数表示参与人数
23     flag= random.randint(1,10) # flag 模拟人们取硬币或放硬币的概率
24     if flag > Threshold:
25         # 放硬币
26         delta=random.randint(1,Max_DonateCoin)
27         delta=random.randint(1,delta)          # 模拟了人们捐款可能性,有偏少的倾向
28         Box_sum =Box_sum + delta
29         Box_per_remain.append(Box_sum)
30     else:
31         # 取硬币
32         delta=random.randint(1,Max_TakeCoin)
33         delta=random.randint(delta,Max_TakeCoin) # 模拟了人 取硬币的可能性,偏多的倾向
34         if Box_sum < delta:
35             Box_sum =0                           # 如果不够取,则取光
36         else:
37             Box_sum =Box_sum - delta
38         Box_per_remain.append(Box_sum)
39
40 print(Box_per_remain)
41
42
43 # 绘图区
44 fig = plt.figure()
45
46 ## 1. 标题、X、Y 轴 label
47 plt.title('Subway testing')
48 plt.xlabel('Time')
49 plt.ylabel('Money remained')
50
51 x= np.arange(len(Box_per_remain))
52
53 ## 2. data
54
55 plt.plot(x,Box_per_remain,color='r')
56 plt.bar(x,Box_per_remain,alpha=.5,color='g')
57
58 plt.show()
step3:修改代码修改阈值为3.5,最多可取硬币数为3,最多可放银币数为2
1 old = 3.5        #  阈值,可调: 1~Threshold 为取硬币,Threshold+1 ~10 为放硬币
2 Max_TakeCoin=3       #  最多可取硬币数量
3 Max_DonateCoin=2     #  最多可放硬币数量
push至远端仓库https://gitee.com/a56787962007/Game

转载于:https://www.cnblogs.com/a56787962007/p/7572167.html

软工作业:(2)硬币游戏--代码分析与改进相关推荐

  1. 2017(秋)软工作业: (2)硬币游戏—— 代码分析与改进

    作业目的 Python 程序阅读理解 学习Python 编码风格指南中译版(Google SOC), 改进Python程序 如何设计游戏规则,使得慈善事业可持续. 地铁口放置硬币箱(初始值500硬币) ...

  2. 软工作业3:用户体验分析——以“南通大学教务管理系统微信公众号”为例

    一.目标 基于实例分析,体会用户体验设计的 7 条准则. 二.要求 1.基于 7 条UX评价准则,分析"南通大学教务管理系统微信公众号" 在用户体验设计方面满意的地方并陈述理由. ...

  3. 软工作业4:用户体验分析:以 “师路南通网站” 为例

    一.目标:针对师路南通 ,开展UX分析. PS:对比另外2个学习网站:1. UMU学习平台 :2. 学生安全教育平台 基于实例分析,体会用户体验设计的 7 条准则. 二.过程 (一)满意的地方 1.界 ...

  4. 软工作业 5:词频统计——增强功能

    一.基本信息 1.1 编译环境.项目名称.作者 1 #编译环境:python3.6 2 #项目名称:软工作业5-词频统计-增强功能 3 #作者:1613072055 潘博 4 # 1613072056 ...

  5. 第一次软工作业(数独)

    第一次软工作业(数独) 1.该项目的github地址: https://github.com/514DNA/sudoku 2.各个模块耗费的时间: PSP2.1 Personal Software P ...

  6. 第三次软工作业——实现最大字段和算法并进行判定条件覆盖

    第三次软工作业 实现最大子段和的算法并进行条件组合覆盖测试 (一)什么是最大子段和? 我自己的理解: 一个数组可以若干个子数组,包含自身.每一个字数组都有一个数组元素之和,求这些和之间的最大值. 最朴 ...

  7. 第一次软工作业展示——潘学

    第一次软工作业完成啦! 回首这个作业的完成过程,我是很有收获.这个作业有几个难点:1.在给定目录下读取TXT文件的内容:2.从读到的内容中分析出单词:3.统计单词的出现频率并输出. 我之前只学习过C和 ...

  8. 第一次软工作业(构建之法)

    第一次软工作业(构建之法) 关于构建之法的若干个问题 1.第一章32页,原文:"有人认为,"中文编程",是解决程序员编程效率的一个秘密武器,请问它是一个"银弹& ...

  9. 软工作业2:硬币游戏——代码的分析与改进

    目的: Python 程序阅读理解 学习Python 编码风格指南中译版(Google SOC), 改进Python程序 如何设计游戏规则,使得慈善事业可持续. 地铁口放置硬币箱(初始值500硬币), ...

最新文章

  1. 戚薇在冰箱放香水,是贫穷限制了想象力!
  2. js赋值后 改变现有数据会修改原来的数据
  3. 2021-11-18可变参数
  4. Data for set COM_LOCAT_ADDR may only be changed in the original system CRQ_100
  5. Linux中的 【 find 】 命令
  6. 生活过得很苦 不知道什么时候才能解脱
  7. iconv linux 开源代码,每天一个 Linux 命令(123):iconv 命令
  8. java poi 合并单元格
  9. Google浏览器插件
  10. appium 切换上下文的时候报错
  11. 生死看淡,不服就GAN
  12. 手写 React 第 2 节 - 初探 React 实现机制
  13. 使用python爬虫爬取百度新闻,告诉你社会热点话题
  14. clearTimeout() 方法
  15. 黑客瞄准里约奥运会,多种手法可能让你中招
  16. 基于树莓派的语音识别和语音合成
  17. Windows文件名区分大小写
  18. Android实现圆形图片
  19. 在线计算机推理,UCAT考试——定量推理部分指南
  20. ILSSI认证|六西格玛绿带、黑带证书|优思学院

热门文章

  1. 关于HttpUtility.UrlEncode,HttpUtility.UrlDecode,Server.UrlEncode,Server.UrlDecode
  2. ios开发循环网络请求_如何简化网络请求接口开发
  3. LeetCode —— 980. 不同路径 III(Python)
  4. pytorch——张量操作与线性回归
  5. 利用matlab小波GUI工具箱对空挡噪声进行滤波
  6. 工作线程AfxBeginThread的使用
  7. SSH框架整合——基于注解
  8. Java操作MySQL
  9. pandas apply函数_Pandas学习笔记(四)
  10. Linux ubuntu 装openCV,Ubuntu Linux下安装OpenCV2.4.1所需包