软件工程作业(2)

step 1fork老师的仓库

 将硬币游戏fork到码云仓库。

 

step2clone到本地,修改后push到远端仓库

 将仓库Game.git clone到本地

 

 

 运行Python程序。

1)Python官网上下载Python3.6.2并安装。

2)Python官网上下载numpy-1.13.1-cp36-cp36m-manylinux1_x86_64.whl下载好后将文件放到python安装目录下的scripts文件夹中

3)将上述文件夹路径加入到系统变量中。

 

4)更新python并安装。

命令行程序中分别输入:python -m pip install -U pip setuptoolspython -m pip install matplotlib

 

5)python中输入import numpy,没有提示异常,说明安装成功。

 

6)运行Game程序。

 

 

 学习 Python 编码风格指南中译版(Google SOC依据代码规范改进代码。

1import分组及顺序

import应该按照从最常用到最不常用的顺序分组放置:

import 标准库

import 第三方库

import Google App Engine 相关库……

import应用程序特有的内容应该按照字母顺序排序,但所有以from开头的行都应该靠前,然后是一个空行,再然后是所有以import开头的行。

原程序中:

#!/usr/bin/env python3

# -*- coding: utf-8 -*-

import random

import numpy as np

import matplotlib.pyplot as plt

from matplotlib import mlab

from matplotlib import rcParams

应改成:

iimport random

import matplotlib.pyplot as plt

import numpy as np

 

from matplotlib import mlab

from matplotlib import rcParams

 

2)空格

①等号(“=”)用于指名参数或默认参数值时,两边不要加空格。

    原程序中:

# 初始参数设置

Box_sum =500         # 箱子中剩余硬币数量,初始值

People_Flag= random.randint(1,10)       # flag 模拟人们取硬币或放硬币的概率 1~10

Threshold = 2.5        #  阈值,可调: 1~Threshold 为取硬币,Threshold+1 ~10 为放硬币

应改成:

Box_sum=500         # 箱子中剩余硬币数量,初始值

People_Flag=random.randint(1,10)       # flag 模拟人们取硬币或放硬币的概率 1~10

Threshold=2.5       #  阈值,可调: 1~Threshold 为取硬币,Threshold+1 ~10 为放硬币

 

②在二元运算符两边各家一个空格,包括:赋值(=)、比较(==<>!=<><=>=innot inisis not)、以及布尔运算符(andornot)。

原程序中:

# 算法模拟

for x in range(1,5000):  # 循环次数表示参与人数

  flag= random.randint(1,10) # flag 模拟人们取硬币或放硬币的概率

  if flag > Threshold:

  # 放硬币

  delta=random.randint(1,Max_DonateCoin)

  delta=random.randint(1,delta)          # 模拟了人们捐款可能性,有偏少的倾向

  Box_sum =Box_sum + delta

  Box_per_remain.append(Box_sum)

  else:

      # 取硬币

      delta=random.randint(1,Max_TakeCoin)

      delta=random.randint(delta,Max_TakeCoin) # 模拟了人 取硬币的可能性,偏多的倾向

      if Box_sum < delta:

       Box_sum =0                           # 如果不够取,则取光

      else:

       Box_sum =Box_sum - delta

      Box_per_remain.append(Box_sum)

 

print(Box_per_remain)

应改成:

# 算法模拟

for x in range(1,5000):  # 循环次数表示参与人数

  flag = random.randint(1,10) # flag 模拟人们取硬币或放硬币的概率

  if flag > Threshold:

  # 放硬币

  delta = random.randint(1,Max_DonateCoin)

  delta = random.randint(1,delta)          # 模拟了人们捐款可能性,有偏少的倾向

  Box_sum = Box_sum + delta

  Box_per_remain.append(Box_sum)

  else:

      # 取硬币

      delta = random.randint(1,Max_TakeCoin)

      delta = random.randint(delta,Max_TakeCoin) # 模拟了人 取硬币的可能性,偏多的倾向

      if Box_sum < delta:

       Box_sum = 0                           # 如果不够取,则取光

      else:

       Box_sum = Box_sum - delta

      Box_per_remain.append(Box_sum)

 

print(Box_per_remain)

 

3)空行

在文件最后总是加一个空行,这可以避免很多diff工具生成“No newline at end of file”信息。

原程序中:

## 2. data

 

plt.plot(x,Box_per_remain,color='r')

plt.bar(x,Box_per_remain,alpha=.5,color='g')

 

plt.show()

    应在最后添上一个空行。

 

 将修改的代码commitpush到远端的仓库。

 

 

 游戏规则说明。

游戏一开始,假设箱子中有500硬币,最多可取5硬币,最多可放1硬币。若有5000人参与游戏,模拟取硬币或放硬币的概率,若概率为1~2.5则可以取硬币,3.5~10则只能放硬币。

 

 远端仓库的链接。

https://gitee.com/xxxmichigirl/Game/commit/b65a009e18581b78ab22910b21c0511f32639cd3

 

 

转载于:https://www.cnblogs.com/xxxmichigirl/p/7570007.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值