CR真花の慶次2、漆黒、P花の慶次蓮のPythonによる連荘シミュレーション
CR真花の慶次2漆黒しみゅれーしょん
import random
import statistics
import collections
import matplotlib.pyplot as plt
import seaborn as sns
#花の慶次漆黒の連荘の関数定義
def renchan(kakuhen):
dedama = 840
ren = 1
suru = 0
# kakuhen = 0
jitan = 0
while suru < 1:
#転落抽選
tyusen = random.random()
jitan += 1
#転落してないとき
if kakuhen == 0:
if tyusen <= (1/270.8):
kakuhen += 1
#既に時短100消化済み
if jitan >= 104:
suru += 1
else:
tyusen2 = random.random()
if tyusen2 <= (1/145.31):
ren += 1
dedama += 2240
kakuhen = 0
jitan = 0
#既に転落してかつ時短100回消化してない
else:
#引き戻し抽選
if jitan >= 104:
suru += 1
else:
tyusen3 = random.random()
if tyusen3 <= (1/319.68):
ren += 1
dedama += 2240
kakuhen = 0
jitan = 0
# print ("ren=",ren)
return ren,dedama
"""ここからラッシュ評価"""
#連荘性能の評価
#ラッシュ突入回数
sikou = 100000
#連荘回数
ren1 = []
#ラッシュの出玉数
dedama1 = []
for sim in range(1,sikou+1):
#初当たりの振り分け処理
furiwake1 = random.randint(1,100)
if furiwake1 >= 1 and furiwake1 <= 45:
ren,dedama = renchan(1)
else:
ren,dedama = renchan(0)
dedama1.append(dedama)
ren1.append(ren)
#連荘平均数
m1 = statistics.mean(ren1)
m2 = statistics.mean(dedama1)
#連荘と出玉の整理
ren1.sort()
dedama1.sort()
print ("連荘数=",ren1)
#print ("出玉数=",dedama1)
print('連荘平均: {0:.2f}'.format(m1))
print('出玉平均: {0:.1f}'.format(m2))
ren_bunpu = collections.Counter(ren1)
dedama_bunpu = collections.Counter(dedama1)
#print(ren_bunpu)
#出玉の円グラフ作表用定義
x1 = sum( x1 <= 1000 for x1 in dedama1)
x2 = sum( 1000 < x2 <= 5000 for x2 in dedama1)
x3 = sum( 5000 < x3 <= 10000 for x3 in dedama1)
x4 = sum( 10000 < x4 for x4 in dedama1)
Xgraph = ["{0:.1f}".format(x1/sikou*100),"{0:.1f}".format(x2/sikou*100),
"{0:.1f}".format(x3/sikou*100),"{0:.1f}".format(x4/sikou*100)]
label = ["tan","ika","manti","manpatu"]
colors2 = ["0.3", "0.5", "0.7", "0.9", "1.1"]
plt.pie(Xgraph, labels=label, counterclock=False, startangle=90, colors=colors2,autopct="%1.1f%%")
plt.axis('equal')
d = list(ren_bunpu.keys())
e = list(ren_bunpu.values())
sns.set()
sns.set_style("darkgrid", {'grid.linestyle': '--'})
sns.set_context("paper", 1.0, {"lines.linewidth": 1})
sns.set_palette("winter_r", 2, 1)
sns.set('talk', 'darkgrid', 'dark', font_scale=1.0,
rc={"lines.linewidth": 10, 'grid.linestyle': '--'})
fig, ax = plt.subplots(figsize = (10,5))
ax.set(xlabel ='ren', ylabel='occcurs', xlim=(0,30), ylim=(0,1000))
ax.bar(d,e)
plt.show()
CR真花の慶次2しみゅれーしょん
import random
import statistics
import collections
import matplotlib.pyplot as plt
import seaborn as sns
#花の慶次2の連荘の関数定義
def renchan(kakuhen):
dedama = 720
ren = 1
suru = 0
# kakuhen = 0
jitan = 0
while suru < 1:
#転落抽選
tyusen = random.random()
jitan += 1
#転落してないとき
if kakuhen == 0:
if tyusen <= (1/270.8):
kakuhen += 1
#既に時短100消化済み
if jitan >= 104:
suru += 1
else:
tyusen2 = random.random()
if tyusen2 <= (1/145.31):
ren += 1
dedama += 1910
kakuhen = 0
jitan = 0
#既に転落してかつ時短100回消化してない
else:
#引き戻し抽選
if jitan >= 104:
suru += 1
else:
tyusen3 = random.random()
if tyusen3 <= (1/319.68):
ren += 1
dedama += 1910
kakuhen = 0
jitan = 0
# print ("ren=",ren)
return ren,dedama
"""ここからラッシュ評価"""
#連荘性能の評価
#ラッシュ突入回数
sikou = 100000
#連荘回数
ren1 = []
#ラッシュの出玉数
dedama1 = []
for sim in range(1,sikou+1):
#初当たりの振り分け処理
furiwake1 = random.randint(1,100)
if furiwake1 >= 1 and furiwake1 <= 30:
ren,dedama = renchan(1)
else:
ren,dedama = renchan(0)
dedama1.append(dedama)
ren1.append(ren)
#連荘平均数
m1 = statistics.mean(ren1)
m2 = statistics.mean(dedama1)
#連荘と出玉の整理
ren1.sort()
dedama1.sort()
print ("連荘数=",ren1)
#print ("出玉数=",dedama1)
print('連荘平均: {0:.2f}'.format(m1))
print('出玉平均: {0:.1f}'.format(m2))
ren_bunpu = collections.Counter(ren1)
dedama_bunpu = collections.Counter(dedama1)
#print(ren_bunpu)
#出玉の円グラフ作表用定義
x1 = sum( x1 <= 1000 for x1 in dedama1)
x2 = sum( 1000 < x2 <= 5000 for x2 in dedama1)
x3 = sum( 5000 < x3 <= 10000 for x3 in dedama1)
x4 = sum( 10000 < x4 for x4 in dedama1)
Xgraph = ["{0:.1f}".format(x1/sikou*100),"{0:.1f}".format(x2/sikou*100),
"{0:.1f}".format(x3/sikou*100),"{0:.1f}".format(x4/sikou*100)]
label = ["tan","ika","manti","manpatu"]
colors2 = ["0.3", "0.5", "0.7", "0.9", "1.1"]
plt.pie(Xgraph, labels=label, counterclock=False, startangle=90, colors=colors2,autopct="%1.1f%%")
plt.axis('equal')
d = list(ren_bunpu.keys())
e = list(ren_bunpu.values())
sns.set()
sns.set_style("darkgrid", {'grid.linestyle': '--'})
sns.set_context("paper", 1.0, {"lines.linewidth": 1})
sns.set_palette("winter_r", 2, 1)
sns.set('talk', 'darkgrid', 'dark', font_scale=1.0,
rc={"lines.linewidth": 10, 'grid.linestyle': '--'})
fig, ax = plt.subplots(figsize = (10,5))
ax.set(xlabel ='ren', ylabel='occcurs', xlim=(0,30), ylim=(0,1000))
ax.bar(d,e)
plt.show()
P花の慶次蓮連荘しみゅれーしょん
import random
import statistics
import collections
import matplotlib.pyplot as plt
import seaborn as sns
#花の慶次蓮 ラウンド振り分け定義
def furi():
furir = random.randint(1,100)
furideda = 0
if furir >= 1 and furir <= 70:
furideda += 1400
elif furir == 71:
furideda += 1400
elif furir == 72:
furideda += 1120
elif furir == 73:
furideda += 840
elif furir >= 74 and furir <= 79:
furideda += 700
else:
furideda += 560
return furideda
#花の慶次蓮の連荘の関数定義
def renchan(kakuhen):
dedama = 560
ren = 1
suru = 0
# kakuhen = 0
jitan = 0
while suru < 1:
#転落抽選
tyusen = random.random()
jitan += 1
#転落してないとき
if kakuhen == 0:
if tyusen <= (1/520.12):
kakuhen += 1
#既に時短100消化済み
if jitan >= 104:
suru += 1
else:
tyusen2 = random.random()
if tyusen2 <= (1/129.77):
ren += 1
dedama += furi()
kakuhen = 0
jitan = 0
#既に転落してかつ時短100回消化してない
else:
#引き戻し抽選
if jitan >= 104:
suru += 1
else:
tyusen3 = random.random()
if tyusen3 <= (1/319.68):
ren += 1
dedama += furi()
kakuhen = 0
jitan = 0
# print ("ren=",ren)
return ren,dedama
"""ここからラッシュ評価"""
#連荘性能の評価
#ラッシュ突入回数
sikou = 100000
#連荘回数
ren1 = []
#ラッシュの出玉数
dedama1 = []
for sim in range(1,sikou+1):
#初当たりの振り分け処理
furiwake1 = random.randint(1,100)
if furiwake1 >= 1 and furiwake1 <= 50:
ren,dedama = renchan(1)
else:
ren,dedama = renchan(0)
dedama1.append(dedama)
ren1.append(ren)
#連荘平均数
m1 = statistics.mean(ren1)
m2 = statistics.mean(dedama1)
#連荘と出玉の整理
ren1.sort()
dedama1.sort()
print ("連荘数=",ren1)
#print ("出玉数=",dedama1)
print('連荘平均: {0:.2f}'.format(m1))
print('出玉平均: {0:.1f}'.format(m2))
ren_bunpu = collections.Counter(ren1)
dedama_bunpu = collections.Counter(dedama1)
#print(ren_bunpu)
#出玉の円グラフ作表用定義
x1 = sum( x1 <= 1000 for x1 in dedama1)
x2 = sum( 1000 < x2 <= 5000 for x2 in dedama1)
x3 = sum( 5000 < x3 <= 10000 for x3 in dedama1)
x4 = sum( 10000 < x4 for x4 in dedama1)
Xgraph = ["{0:.1f}".format(x1/sikou*100),"{0:.1f}".format(x2/sikou*100),
"{0:.1f}".format(x3/sikou*100),"{0:.1f}".format(x4/sikou*100)]
label = ["tan","ika","manti","manpatu"]
colors2 = ["0.3", "0.5", "0.7", "0.9", "1.1"]
plt.pie(Xgraph, labels=label, counterclock=False, startangle=90, colors=colors2,autopct="%1.1f%%")
plt.axis('equal')
d = list(ren_bunpu.keys())
e = list(ren_bunpu.values())
sns.set()
sns.set_style("darkgrid", {'grid.linestyle': '--'})
sns.set_context("paper", 1.0, {"lines.linewidth": 1})
sns.set_palette("winter_r", 2, 1)
sns.set('talk', 'darkgrid', 'dark', font_scale=1.0,
rc={"lines.linewidth": 10, 'grid.linestyle': '--'})
fig, ax = plt.subplots(figsize = (10,5))
ax.set(xlabel ='ren', ylabel='occcurs', xlim=(0,80), ylim=(0,1000))
ax.bar(d,e)
plt.show()