硬币游戏---代码分析与改进
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了硬币游戏---代码分析与改进相关的知识,希望对你有一定的参考价值。
一、钱箱使用规则:
1.在地铁口放置钱箱,内放500枚硬币。
2.如需要零钱,可以取其中1~5枚硬币,如果不足所需,则取光。取钱倾向多取。
3.善良的人可以往其中放置一枚硬币,放钱倾向少放。
通过对Python编码风格规则的学习,对代码进行了一些改进,改动后输出结果截图如下:
二、程序代码修改:
# 算法模拟 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) + 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: - # 取硬币 - 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) + Box_sum =Box_sum - delta + Box_per_remain.append(Box_sum) print(Box_per_remain) @@ -55,4 +55,4 @@ x= np.arange(len(Box_per_remain)) plt.plot(x,Box_per_remain,color=‘r‘) plt.bar(x,Box_per_remain,alpha=.5,color=‘g‘) -plt.show() \\ No newline at end of file +plt.show()
修改代码部分:代码总共改动了16行,主要是根据Python编码风格方面准则的缩进:4空格(不要用tab)来改进的。
三、远程仓库链接:http://git.oschina.net/whan0812
以上是关于硬币游戏---代码分析与改进的主要内容,如果未能解决你的问题,请参考以下文章