交作业

来源:8-13 划算还是不划算

慕婉清8051307

2019-05-31

'''
    声明变量
'''
l1 = 0 #1级石头数量
l3 = 0 #3级石头数量
l4 = 0 #4级石头数量
l6 = 0 #6级石头数量
gold = 0.0 #金币数量
diamond = 0 #钻石数量
vit = 0 #体力数量

'''
    导入数据
'''
from value import *
import random

'''
    购买1级石头
'''
def buy_l1():
    global gold, diamond, l1
    gold += L1_value 
    diamond += L1_value_diamond
    l1 += 1
    # print('购买一级石头成功!')
    # print('你现在拥有' + str(l1) + '颗一级石头。')

'''
    合成3级石头
'''
def get_l3():
    global l1, l3, gold, vit
    while l1 < l1_to_l3 + 1:
        buy_l1()
    l1 -= l1_to_l3 + 1
    l3 += 1
    gold += l1_to_l3_gold
    vit += l1_to_l3_vit
    # print('合成三级石头成功!')
    # print('你现在拥有' + str(l1) + '颗一级石头。')
    # print('你现在拥有' + str(l3) + '颗三级石头。')

'''
    合成4级石头
'''
def get_l4():
    global l1, l3, l4, gold, vit
    if l3 < 1:
        get_l3()
    else:
        while l1 < l3_to_l4 + 1:
            buy_l1()
        if random.random() <= l3_to_l4_rate:
            l1 -= l3_to_l4
            l3 -= 1
            l4 += 1
            gold += l3_to_l4_gold
            vit += l3_to_l4_vit
            # print('合成四级石头成功!')
            # print('你现在拥有' + str(l1) + '颗一级石头。')
            # print('你现在拥有' + str(l3) + '颗三级石头。')
            # print('你现在拥有' + str(l4) + '颗四级石头。')
        else:
            l1 -= l3_to_l4
            l3 -= 1
            gold += l3_to_l4_gold
            # print('合成四级石头失败!')
            # print('你现在拥有' + str(l1) + '颗一级石头。')
            # print('你现在拥有' + str(l3) + '颗三级石头。')

'''
    合成6级石头
'''
def get_l6():
    global l4, l6, gold, vit, diamond
    while l4 < l4_to_l6:
        get_l4()
    l4 -= l4_to_l6
    l6 += 1
    gold += l4_to_l6_gold
    vit += l4_to_l6_vit
    # print('合成六级石头成功!')
    money = gold + diamond * 0.05 + vit
    # print('本次合成使用金币:' + str(money))
    return money
    
'''
    最终计算
'''
add = 0 #总和
repeat = 100 #循环次数
for i in range(0,repeat):
    end_money = get_l6()
    add += end_money
    l1, l3, l4, l6, gold, diamond, vit = 0, 0, 0, 0, 0.0, 0, 0
average = add / repeat #平均值
print( str(repeat) + '次合成,平均' + str(average) + '每次')
if average > 750:
    print('还是直接购买划算!')
else:
    print('自己合成比较划算!')


写回答

1回答

7七月

2019-06-01

结果大概在914左右。。。不知道你算的多少。参考这个答案

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14591 学习 · 4469 问题

查看课程