竞赛模拟 尾号06 排球

 1 import random,math
 2 a = eval(input('输入a的能力值(0-1范围):'))
 3 b = eval(input('输入b的能力值(0-1范围):'))
 4 times = int(input('输入模拟次数:'))
 5 a_final , b_final = 0 , 0 
 6 
 7 for x in range(times):
 8     a_serving , b_serving = 0 , 0
 9     for i in range(5):
10         a_win , b_win = 0 , 0 
11         if i<4:
12             while True:
13                 tem = random.uniform(0,1)
14                 if a > tem:
15                     a_win += 1
16                 else:
17                     b_win += 1
18                 if a_win>=25 and ((a_win-b_win)>=2):
19                     a_serving += 1
20                     break
21                 elif b_win>=25 and ((b_win-a_win)>=2):
22                     b_serving += 1
23                     break
24         elif i==4:
25             while True:
26                 if a > random.random():
27                     a_win += 1
28                 else:
29                     b_win += 1
30                 if a_win>=15 and (a_win-b_win>=2):
31                     a_serving += 1
32                     break
33                 elif b_win>=15 and (b_win-a_win>=2):
34                     b_serving += 1         
35                     break   
36     if a_serving>=3:
37         a_final += 1
38     else:
39         b_final += 1
40             
41 
42 
43 print('a赢了{}场比赛,胜率为:{:.2f}%\nb赢了{}场比赛,胜率为:{:.2f}%'.format(a_final , (a_final/times)*100 , b_final , (b_final/times)*100))

猜你喜欢

转载自www.cnblogs.com/hrunjie/p/12743904.html