日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2025/4/9 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软工作业2:硬币游戏——代码的分析与改进 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

目的:

  • Python 程序閱讀理解
  • 學習Python 編碼風格指南中譯版(Google SOC), 改進Python程序
  • 如何設計游戲規(guī)則,使得慈善事業(yè)可持續(xù)。 地鐵口放置硬幣箱(初始值500硬幣),顧客可取、可放。請設計一組規(guī)則,使得該錢箱永遠有錢取(盡量符合實際)
  • 參考:地鐵口錢箱

作業(yè)步驟:

step 1: fork 老師的倉庫

+硬幣游戲:http://git.oschina.net/juking2017/Game.git?將其 fork 到自己的碼云倉庫。

step2:clone 到本地,修改后 push 到自己的遠端倉庫

首先,從軟件管家中安裝Python軟件,安裝成功后,要運行還要安裝pip,安裝鏈接為http://blog.csdn.net/qy20115549/article/details/52179800,就安裝好了。

打開IDLE,open之前克隆的GameMain.py

單擊Run,結果如下圖所示:(里面的數(shù)字都是隨機的)

學習?Python 編碼風格指南中譯版(Google SOC); 依據(jù)代碼規(guī)范改進代碼。

根據(jù)上述python編碼風格,修改代碼,將所有用tab實現(xiàn)的空格重新用空格鍵打出來,修改后的代碼如下圖所示:

將我的修改commit 并 push 到我遠端的倉庫。

查看我的碼云,界面如下圖所示:

?

?

附:

1.修改后的程序代碼:

#!/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# 初始參數(shù)設置 Box_sum =500 # 箱子中剩余硬幣數(shù)量,初始值 People_Flag= random.randint(1,10) # flag 模擬人們取硬幣或放硬幣的概率 1~10 Threshold = 2.5 # 閾值,可調: 1~Threshold 為取硬幣,Threshold+1 ~10 為放硬幣 Max_TakeCoin=5 # 最多可取硬幣數(shù)量 Max_DonateCoin=1 # 最多可放硬幣數(shù)量delata=0 # 取、放硬幣數(shù)量 Box_per_remain= [500] # 每次箱子中硬幣余額,list# 算法模擬 for x in range(1,5000): # 循環(huán)次數(shù)表示參與人數(shù)flag= random.randint(1,10) # flag 模擬人們取硬幣或放硬幣的概率 if flag > Threshold:# 放硬幣delta=random.randint(1,Max_DonateCoin)delta=random.randint(1,delta) # 模擬了人們捐款可能性,有偏少的傾向Box_sum =Box_sum + deltaBox_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 - deltaBox_per_remain.append(Box_sum)print(Box_per_remain)# 繪圖區(qū) fig = plt.figure()## 1. 標題、X、Y 軸 label plt.title('Subway testing') plt.xlabel('Time') plt.ylabel('Money remained')x= np.arange(len(Box_per_remain))## 2. dataplt.plot(x,Box_per_remain,color='r') plt.bar(x,Box_per_remain,alpha=.5,color='g')plt.show()

2.我的遠端倉庫的鏈接:

https://gitee.com/LiuYiLun/Game

轉載于:https://www.cnblogs.com/007-liuyilun/p/7571439.html

總結

以上是生活随笔為你收集整理的软工作业2:硬币游戏——代码的分析与改进的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。