2014-02-07 75 views
0

我試圖計算獎金,損失和利潤基於投注系統具有以下規則上:計算總輸贏爲投注系統

  • 如果你賭贏,你的獎金是你的原始下注+ 1/2的賭注
  • 如果你輸了,你雙倍的,爲下一輪的賭注(鞅系統)

這裏就是我有

int initialBet = 30; 
int currentBet = initialBet; 
int totalWinnings = 0; 
int totalLosses = 0; 
int totalProfit = 0; 
int i = 0 

do { 
if (win) { 
    //you win back your bet + half your bet, i.e. bet=30, win=45, profit=15 
} 
else //loss 
{ 
    totalLosses += currentBet; //you lost your full current bet 
    currentBet = currentBet * 2; //Double your next bet to win back your money 
} 
i++ 
} while (i < 100); 
totalProfit = totalWinnings + totalLosses; 

在我的「勝利」場景中應該如何正確跟蹤此情況?

+2

我通常不加我的獎金給我的損失計算總利潤。 –

+0

我假設你可以贏得部分美元數量,所以你可能希望將美元值存儲在'decimal's中,而不是'int's中。 – dlev

+0

鞅系統的缺陷是你偶爾會失去整個銀行(假設有限銀行,這就是生活)。這個解決方案沒有檢查你是否達到了這個限制(除非你有3.8 * 10^31美元)。因此這個模型有一個重大缺陷。 – Oddthinking

回答

1

這聽起來像你正在尋找的東西是這樣的:

if (win) { 
    totalWinnings += (int)Math.Floor(currentBet * 1.5); 
} 

如果你想分析一個投注策略,好像你想要當你贏做一些與currentBet,但你沒有在這裏指定。

也爲Grant Winney指出,你可能是指計算totalProfit這樣的:

totalProfit = totalWinnings - totalLosses;