Math 如何在循环中记录连胜-制造赔率计算器
我在做一个赔率计算器。我正在尝试打印一名球员将赢得的最高连胜记录和平均连胜记录 当我提到连胜时,我指的是在对手赢1之前,球员连续赢了多少次,反之亦然 我的赔率是40%对60%,仅供参考Math 如何在循环中记录连胜-制造赔率计算器,math,lua,coronasdk,Math,Lua,Coronasdk,我在做一个赔率计算器。我正在尝试打印一名球员将赢得的最高连胜记录和平均连胜记录 当我提到连胜时,我指的是在对手赢1之前,球员连续赢了多少次,反之亦然 我的赔率是40%对60%,仅供参考 while (nFlip <= 99) do nFlip = nFlip + b if math.random(0,4) < 2 then countPlayer = countPlayer + b --!!!!! How to record player str
while (nFlip <= 99) do
nFlip = nFlip + b
if math.random(0,4) < 2 then
countPlayer = countPlayer + b
--!!!!! How to record player streak and player average
print( "Player Wins" )
elseif math.random(0,4) < 3 then
countHouse = countHouse + b
--!!!!! How to record player streak and player average
print( "House Wins" )
end
end
while(nFlip如果连胜的定义是连续获胜的次数,则计算连胜数,并存储在表中
local playerStreak = 0
local houseStreak = 0
local playerStreaks = {}
local houseStreaks = {}
local nFlip = 0
math.randomseed(os.time())
while nFlip <= 99 do
nFlip = nFlip + 1
local r = math.random()
local playerWinProb = 0.4
if r < playerWinProb then -- player wins!
playerStreak = playerStreak + 1
if houseStreak > 0 then -- house won last, end of its streak
table.insert(houseStreaks, houseStreak)
houseStreak = 0
end
-- print( "Player Wins" )
else
houseStreak = houseStreak + 1
if playerStreak > 0 then -- house won last, end of its streak
table.insert(playerStreaks, playerStreak)
playerStreak = 0
end
-- print( "House Wins" )
end
end
table.sort(playerStreaks)
print('largest player streak:', playerStreaks[#playerStreaks])
table.sort(houseStreaks)
print('largest house streak:', houseStreaks[#houseStreaks])
localplayerstreak=0
局部housestrake=0
本地playerStreaks={}
局部条纹={}
本地nFlip=0
math.randomseed(os.time())
当nFlip 0时,豪斯赢了最后一场,结束了连胜
表.插入(房屋条纹,房屋条纹)
housestrake=0
结束
--打印(“玩家获胜”)
其他的
房屋条纹=房屋条纹+1
如果playerStreak>0,那么——豪斯赢了最后一场,结束了连胜
表.插入(playerStreak,playerStreak)
playerStreak=0
结束
--打印(“豪斯赢了”)
结束
结束
表.排序(playerStreaks)
打印(“最大玩家连胜:”,playerStreaks[#playerStreaks])
表.排序(房屋条纹)
打印(“最大房屋条纹:”,房屋条纹[#房屋条纹])
完成所有翻转后,您可以计算统计信息:
- 对于最大的玩家连胜,搜索
playerStreaks
以获得最大值(我很懒,使用了排序,虽然效率不高,但也不错);对于最大的玩家连胜,也是如此
- 对于平均值,将所有玩家连胜相加并除以玩家连胜
- 等等
因此,您希望它在循环结束时告诉您房子和玩家的最高条纹和平均值?就在鼻子上,对。使用存储条纹的数组,然后对k,v成对执行(
循环,找到最高值并计算平均值。elseif math.random(0,4)<3那么
应该是否则