Skip to content
185 changes: 185 additions & 0 deletions notebooks/assignment2_hw2560.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"start game 0\n",
"player0Win,1vs0\n",
"player1Win,9vs7\n",
"player2Lose,4vs6\n",
"player3Win,7vs4\n",
"player4Lose,8vs9\n",
"\n",
"start game 1\n",
"player0Win,7vs6\n",
"player1Win,9vs1\n",
"player2Win,7vs5\n",
"player3Lose,0vs4\n",
"player4Win,7vs4\n",
"\n",
"start game 2\n",
"player0Win,6vs6\n",
"player1Win,8vs0\n",
"player2Lose,3vs8\n",
"player3Win,6vs3\n",
"player4Lose,2vs4\n",
"\n",
"start game 3\n",
"player0Lose,2vs6\n",
"player1Win,7vs2\n",
"player2Win,8vs0\n",
"player3Win,1vs1\n",
"player4Lose,1vs4\n",
"\n",
"start game 4\n",
"player0Lose,0vs6\n",
"player1Lose,0vs8\n",
"player2Win,2vs1\n",
"player3Lose,1vs8\n",
"player4Win,0vs0\n",
"\n",
"start game 5\n",
"player0Win,2vs0\n",
"player1Win,6vs2\n",
"player2Lose,0vs5\n",
"player3Win,6vs3\n",
"player4Win,7vs5\n",
"\n",
"start game 6\n",
"player0Lose,1vs7\n",
"player1Win,4vs2\n",
"player2Lose,3vs6\n",
"player3Lose,0vs4\n",
"player4Lose,1vs2\n",
"\n",
"start game 7\n",
"player0Lose,5vs8\n",
"player1Win,9vs0\n",
"player2Win,5vs3\n",
"player3Lose,7vs8\n",
"player4Lose,3vs7\n",
"\n",
"start game 8\n",
"player0Win,9vs4\n",
"player1Lose,0vs8\n",
"player2Lose,3vs8\n",
"player3Win,6vs2\n",
"player4Win,4vs4\n",
"\n",
"start game 9\n",
"player0Lose,8vs9\n",
"player1Lose,3vs7\n",
"player2Win,7vs3\n",
"player3Lose,3vs7\n",
"player4Win,3vs0\n",
"\n",
"game result:\n",
"player0has $500left.\n",
"player1has $700left.\n",
"player2has $500left.\n",
"player3has $500left.\n",
"player4has $500left.\n"
]
}
],
"source": [
"import random\n",
"\n",
"gameStake = 50\n",
"cards = range(10)\n",
"\n",
"class Player:\n",
" \n",
" playerID=0\n",
" playerPot=0\n",
" \n",
" def __init__(self, inputID, startingPot):\n",
" self.playerID = inputID\n",
" self.playerPot = startingPot\n",
" \n",
" def play(self, dealerCard):\n",
" \n",
" playerCard = random.choice(cards)\n",
" \n",
" if playerCard < dealerCard:\n",
" self.playerPot += -gameStake\n",
" print 'player'+ str(self.playerID) + 'Lose,'+ str(playerCard)+'vs'+ str(dealerCard)\n",
" else:\n",
" self.playerPot += gameStake\n",
" print 'player'+ str(self.playerID) + 'Win,'+ str(playerCard)+'vs'+ str(dealerCard)\n",
" \n",
" def returnPot(self):\n",
" return self.playerPot\n",
" \n",
" def returnID(self):\n",
" return self.playerID\n",
" \n",
" \n",
"def playHand(players):\n",
" \n",
" for player in players:\n",
" dealerCard = random.choice(cards)\n",
" player.play(dealerCard)\n",
" \n",
"def checkBalances(players):\n",
" \n",
" for player in players:\n",
" \n",
" print 'player' + str(player.returnID()) +'has $'+ str(player.returnPot())+'left.'\n",
" \n",
"players =[]\n",
"\n",
"for i in range(5):\n",
" players.append(Player(i,500))\n",
" \n",
"for i in range(10):\n",
" print ''\n",
" print 'start game ' + str(i)\n",
" playHand(players)\n",
" \n",
"print ''\n",
"print 'game result:'\n",
"checkBalances(players)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python [default]",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.12"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
204 changes: 204 additions & 0 deletions notebooks/hw2560_lab2.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import random"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"gameStake = 50\n",
"cards = range(10)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"start game 0\n",
"player0Lose,5vs8\n",
"player1Lose,1vs6\n",
"player2Win,7vs1\n",
"player3Win,8vs6\n",
"player4Lose,4vs9\n",
"\n",
"start game 1\n",
"player0Win,6vs1\n",
"player1Lose,1vs2\n",
"player2Lose,3vs6\n",
"player3Lose,2vs4\n",
"player4Win,8vs5\n",
"\n",
"start game 2\n",
"player0Lose,7vs9\n",
"player1Win,7vs3\n",
"player2Win,6vs6\n",
"player3Win,9vs3\n",
"player4Win,8vs1\n",
"\n",
"start game 3\n",
"player0Lose,3vs9\n",
"player1Win,4vs1\n",
"player2Lose,1vs3\n",
"player3Lose,7vs9\n",
"player4Win,1vs1\n",
"\n",
"start game 4\n",
"player0Lose,2vs5\n",
"player1Lose,1vs6\n",
"player2Win,3vs1\n",
"player3Lose,3vs5\n",
"player4Lose,3vs9\n",
"\n",
"start game 5\n",
"player0Lose,7vs8\n",
"player1Lose,5vs9\n",
"player2Win,9vs9\n",
"player3Win,9vs8\n",
"player4Lose,0vs1\n",
"\n",
"start game 6\n",
"player0Lose,6vs8\n",
"player1Lose,6vs8\n",
"player2Lose,3vs4\n",
"player3Lose,3vs8\n",
"player4Win,5vs1\n",
"\n",
"start game 7\n",
"player0Win,3vs2\n",
"player1Win,1vs0\n",
"player2Win,3vs0\n",
"player3Win,9vs1\n",
"player4Win,0vs0\n",
"\n",
"start game 8\n",
"player0Win,3vs3\n",
"player1Win,3vs2\n",
"player2Lose,6vs8\n",
"player3Lose,1vs9\n",
"player4Win,8vs0\n",
"\n",
"start game 9\n",
"player0Lose,7vs8\n",
"player1Win,8vs0\n",
"player2Lose,3vs8\n",
"player3Win,7vs0\n",
"player4Lose,0vs8\n",
"\n",
"game result:\n",
"player0has $300left.\n",
"player1has $500left.\n",
"player2has $500left.\n",
"player3has $500left.\n",
"player4has $600left.\n"
]
}
],
"source": [
"class Player:\n",
" \n",
" playerID=0\n",
" playerPot=0\n",
" \n",
" def __init__(self, inputID, startingPot):\n",
" self.playerID = inputID\n",
" self.playerPot = startingPot\n",
" \n",
" def play(self, dealerCard):\n",
" \n",
" playerCard = random.choice(cards)\n",
" \n",
" if playerCard < dealerCard:\n",
" self.playerPot += -gameStake\n",
" print 'player'+ str(self.playerID) + 'Lose,'+ str(playerCard)+'vs'+ str(dealerCard)\n",
" else:\n",
" self.playerPot += gameStake\n",
" print 'player'+ str(self.playerID) + 'Win,'+ str(playerCard)+'vs'+ str(dealerCard)\n",
" \n",
" def returnPot(self):\n",
" return self.playerPot\n",
" \n",
" def returnID(self):\n",
" return self.playerID\n",
" \n",
" \n",
"def playHand(players):\n",
" \n",
" for player in players:\n",
" dealerCard = random.choice(cards)\n",
" player.play(dealerCard)\n",
" \n",
"def checkBalances(players):\n",
" \n",
" for player in players:\n",
" \n",
" print 'player' + str(player.returnID()) +'has $'+ str(player.returnPot())+'left.'\n",
" \n",
"players =[]\n",
"\n",
"for i in range(5):\n",
" players.append(Player(i,500))\n",
" \n",
"for i in range(10):\n",
" print ''\n",
" print 'start game ' + str(i)\n",
" playHand(players)\n",
" \n",
"print ''\n",
"print 'game result:'\n",
"checkBalances(players)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [default]",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.12"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
Loading