diff --git a/README.md b/README.md index 58eadd4..4ec36f7 100644 --- a/README.md +++ b/README.md @@ -34,3 +34,4 @@ Feel free to add basic python scripts/programs that helped you learn python. I h 17. [Quick Sort](https://github.com/varshaah2407/Beginners-Python-Projects/blob/main/quick_sort.py) - [Varshaah Shashidhar](https://github.com/varshaah2407) 18. [aritmetic median, biggest number and lowest number](https://github.com/arnavvgupta/functionMaxMinMedian.py) 19. [Insertion Sort](https://github.com/musaibbatghar/Beginners-Python-Projects/blob/main/Insertion_Sort.py) - [Musaib Batghar](https://github.com/musaibbatghar) +20. [Dice rolling](https://github.com/deeps65/Beginners-Python-Projects/blob/main/dice_rolling.py) - [Deepanshu sharma](https://github.com/deeps65) diff --git a/War game/card_class.ipynb b/War game/card_class.ipynb new file mode 100644 index 0000000..b14acd1 --- /dev/null +++ b/War game/card_class.ipynb @@ -0,0 +1,2086 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 17, + "id": "f1ffce40", + "metadata": {}, + "outputs": [], + "source": [ + "#card class\n", + "\n", + "suits = ('Hearts', 'Diamonds', 'Spades', 'Clubs')\n", + "ranks = ('Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine', 'Ten', 'Jack', 'Queen', 'King', 'Ace')\n", + "values = {'Two':2, 'Three':3, 'Four':4, 'Five':5, 'Six':6, 'Seven':7, 'Eight':8, \n", + " 'Nine':9, 'Ten':10, 'Jack':11, 'Queen':12, 'King':13, 'Ace':14}" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "f382ca2a", + "metadata": {}, + "outputs": [], + "source": [ + "class Card:\n", + " \n", + " def __init__(self,suit,rank):\n", + " self.suit=suit\n", + " self.rank=rank\n", + " self.value=values[rank]\n", + " \n", + " def __str__(self):\n", + " return self.rank + \" of \" + self.suit" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "9979f92b", + "metadata": {}, + "outputs": [], + "source": [ + "two_hearts = Card(\"Hearts\",\"Two\")" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "319507cb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Two of Hearts\n" + ] + } + ], + "source": [ + "print(two_hearts)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "ae191b13", + "metadata": {}, + "outputs": [], + "source": [ + "three_of_clubs = Card(\"Clubs\",'Three')" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "f9275b9f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "three_of_clubs.value" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "29ef3a16", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "two_hearts.value > three_of_clubs.value" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "254fa7b1", + "metadata": {}, + "outputs": [], + "source": [ + "#deck class\n", + "import random\n", + "\n", + "class Deck:\n", + " \n", + " def __init__(self):\n", + " self.all_cards = []\n", + " \n", + " for suit in suits:\n", + " for rank in ranks:\n", + " created_card = Card(suit,rank)\n", + " \n", + " self.all_cards.append(created_card)\n", + " \n", + " def shuffle(self):\n", + " \n", + " random.shuffle(self.all_cards)\n", + " \n", + " def deal_one(self):\n", + " # Note we remove one card from the list of all_cards\n", + " return self.all_cards.pop() " + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "8eb7cf5f", + "metadata": {}, + "outputs": [], + "source": [ + "new_deck = Deck()" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "a79d8a69", + "metadata": {}, + "outputs": [], + "source": [ + "first_card = new_deck.all_cards[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "21557e73", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "first_card.value" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "3daded84", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Two of Hearts\n" + ] + } + ], + "source": [ + "print(first_card)" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "30f8177a", + "metadata": {}, + "outputs": [], + "source": [ + "bottom_card = new_deck.all_cards[-1]" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "id": "ae9d42cd", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ace of Clubs\n" + ] + } + ], + "source": [ + "print(bottom_card)" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "37675534", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ace of Clubs\n" + ] + } + ], + "source": [ + "print(bottom_card)" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "4ea932d5", + "metadata": {}, + "outputs": [], + "source": [ + "new_deck.shuffle()" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "4af5da00", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Five of Clubs\n" + ] + } + ], + "source": [ + "print(new_deck.all_cards[-1])" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "f13c2c60", + "metadata": {}, + "outputs": [], + "source": [ + "mycard = new_deck.deal_one()" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "4f1d0da2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Five of Clubs\n" + ] + } + ], + "source": [ + "print(mycard)" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "a6833b8b", + "metadata": {}, + "outputs": [], + "source": [ + "#Player class \n", + "\n", + "class Player:\n", + " def __init__(self,name):\n", + " \n", + " self.name = name\n", + " self.all_cards = []\n", + " \n", + " def remove_one(self):\n", + " # Note we remove one card from the list of all_cards\n", + " # We state 0 to remove from the \"top\" of the deck\n", + " # We'll imagine index -1 as the bottom of the deck\n", + " return self.all_cards.pop(0)\n", + " \n", + " def add_cards(self,new_cards):\n", + " if type(new_cards) == type([]):\n", + " self.all_cards.extend(new_cards)\n", + " else:\n", + " self.all_cards.append(new_cards)\n", + " \n", + " \n", + " def __str__(self):\n", + " return f'Player {self.name} has {len(self.all_cards)} cards.'" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "b487dba8", + "metadata": {}, + "outputs": [], + "source": [ + "new_player = Player(\"Deepanshu\")" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "id": "5edceb71", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Player Deepanshu has 0 cards.\n" + ] + } + ], + "source": [ + "print(new_player)" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "afe7b651", + "metadata": {}, + "outputs": [], + "source": [ + "new_player.add_cards(mycard)" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "eb569688", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Player Deepanshu has 1 cards.\n" + ] + } + ], + "source": [ + "print(new_player)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "57dd9df7", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Five of Clubs\n" + ] + } + ], + "source": [ + "print(new_player.all_cards[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "id": "194306ae", + "metadata": {}, + "outputs": [], + "source": [ + "new_player.add_cards([mycard,mycard,mycard])" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "id": "fdae816a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Player Deepanshu has 4 cards.\n" + ] + } + ], + "source": [ + "print(new_player)" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "id": "959e3312", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<__main__.Card at 0x1dd033b4d60>" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "new_player.remove_one()" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "id": "86ca9524", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Player Deepanshu has 3 cards.\n" + ] + } + ], + "source": [ + "print(new_player)" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "6dfdc921", + "metadata": {}, + "outputs": [], + "source": [ + "# GAME SETUP\n", + "player_one = Player(\"One\")\n", + "player_two = Player(\"Two\")\n", + "\n", + "new_deck = Deck()\n", + "new_deck.shuffle()\n", + "\n", + "for x in range(26):\n", + " player_one.add_cards(new_deck.deal_one())\n", + " player_two.add_cards(new_deck.deal_one())" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "57abef98", + "metadata": {}, + "outputs": [], + "source": [ + "game_on = True" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "id": "9918fa60", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Round 1\n", + "Round 2\n", + "Round 3\n", + "Round 4\n", + "Round 5\n", + "Round 6\n", + "Round 7\n", + "Round 8\n", + "Round 9\n", + "Round 10\n", + "Round 11\n", + "Round 12\n", + "Round 13\n", + "WAR!\n", + "Round 14\n", + "Round 15\n", + "Round 16\n", + "Round 17\n", + "Round 18\n", + "Round 19\n", + "Round 20\n", + "Round 21\n", + "Round 22\n", + "Round 23\n", + "Round 24\n", + "WAR!\n", + "Round 25\n", + "Round 26\n", + "Round 27\n", + "Round 28\n", + "Round 29\n", + "Round 30\n", + "Round 31\n", + "Round 32\n", + "Round 33\n", + "Round 34\n", + "Round 35\n", + "Round 36\n", + "WAR!\n", + "Round 37\n", + "Round 38\n", + "Round 39\n", + "Round 40\n", + "Round 41\n", + "Round 42\n", + "Round 43\n", + "Round 44\n", + "Round 45\n", + "Round 46\n", + "Round 47\n", + "Round 48\n", + "Round 49\n", + "Round 50\n", + "Round 51\n", + "Round 52\n", + "Round 53\n", + "Round 54\n", + "Round 55\n", + "Round 56\n", + "Round 57\n", + "Round 58\n", + "Round 59\n", + "Round 60\n", + "Round 61\n", + "Round 62\n", + "Round 63\n", + "Round 64\n", + "Round 65\n", + "Round 66\n", + "Round 67\n", + "Round 68\n", + "Round 69\n", + "Round 70\n", + "Round 71\n", + "Round 72\n", + "Round 73\n", + "Round 74\n", + "Round 75\n", + "Round 76\n", + "Round 77\n", + "Round 78\n", + "Round 79\n", + "Round 80\n", + "Round 81\n", + "Round 82\n", + "Round 83\n", + "WAR!\n", + "Round 84\n", + "Round 85\n", + "Round 86\n", + "Round 87\n", + "Round 88\n", + "Round 89\n", + "Round 90\n", + "Round 91\n", + "Round 92\n", + "Round 93\n", + "Round 94\n", + "Round 95\n", + "Round 96\n", + "Round 97\n", + "Round 98\n", + "Round 99\n", + "Round 100\n", + "Round 101\n", + "Round 102\n", + "Round 103\n", + "Round 104\n", + "Round 105\n", + "Round 106\n", + "Round 107\n", + "Round 108\n", + "Round 109\n", + "WAR!\n", + "Round 110\n", + "Round 111\n", + "Round 112\n", + "Round 113\n", + "Round 114\n", + "Round 115\n", + "WAR!\n", + "Round 116\n", + "Round 117\n", + "Round 118\n", + "Round 119\n", + "Round 120\n", + "Round 121\n", + "Round 122\n", + "Round 123\n", + "Round 124\n", + "Round 125\n", + "Round 126\n", + "WAR!\n", + "Round 127\n", + "Round 128\n", + "Round 129\n", + "Round 130\n", + "Round 131\n", + "Round 132\n", + "Round 133\n", + "Round 134\n", + "Round 135\n", + "Round 136\n", + "Round 137\n", + "Round 138\n", + "Round 139\n", + "Round 140\n", + "Round 141\n", + "Round 142\n", + "Round 143\n", + "Round 144\n", + "Round 145\n", + "Round 146\n", + "Round 147\n", + "Round 148\n", + "WAR!\n", + "Round 149\n", + "Round 150\n", + "Round 151\n", + "Round 152\n", + "Round 153\n", + "Round 154\n", + "Round 155\n", + "Round 156\n", + "Round 157\n", + "Round 158\n", + "Round 159\n", + "Round 160\n", + "Round 161\n", + "Round 162\n", + "Round 163\n", + "Round 164\n", + "Round 165\n", + "WAR!\n", + "Round 166\n", + "Round 167\n", + "Round 168\n", + "Round 169\n", + "Round 170\n", + "Round 171\n", + "Round 172\n", + "WAR!\n", + "Round 173\n", + "Round 174\n", + "Round 175\n", + "Round 176\n", + "Round 177\n", + "Round 178\n", + "WAR!\n", + "Round 179\n", + "Round 180\n", + "Round 181\n", + "Round 182\n", + "Round 183\n", + "Round 184\n", + "Round 185\n", + "Round 186\n", + "Round 187\n", + "Round 188\n", + "WAR!\n", + "Round 189\n", + "Round 190\n", + "Round 191\n", + "Round 192\n", + "Round 193\n", + "Round 194\n", + "Round 195\n", + "Round 196\n", + "Round 197\n", + "Round 198\n", + "Round 199\n", + "Round 200\n", + "Round 201\n", + "WAR!\n", + "Round 202\n", + "Round 203\n", + "Round 204\n", + "WAR!\n", + "Round 205\n", + "Round 206\n", + "Round 207\n", + "Round 208\n", + "Round 209\n", + "Round 210\n", + "Round 211\n", + "Round 212\n", + "Round 213\n", + "Round 214\n", + "Round 215\n", + "Round 216\n", + "Round 217\n", + "Round 218\n", + "Round 219\n", + "Round 220\n", + "Round 221\n", + "Round 222\n", + "Round 223\n", + "Round 224\n", + "Round 225\n", + "Round 226\n", + "Round 227\n", + "Round 228\n", + "Round 229\n", + "Round 230\n", + "Round 231\n", + "Round 232\n", + "Round 233\n", + "Round 234\n", + "Round 235\n", + "Round 236\n", + "Round 237\n", + "Round 238\n", + "Round 239\n", + "Round 240\n", + "Round 241\n", + "Round 242\n", + "Round 243\n", + "Round 244\n", + "Round 245\n", + "Round 246\n", + "Round 247\n", + "Round 248\n", + "Round 249\n", + "Round 250\n", + "Round 251\n", + "Round 252\n", + "Round 253\n", + "Round 254\n", + "Round 255\n", + "Round 256\n", + "Round 257\n", + "Round 258\n", + "Round 259\n", + "Round 260\n", + "Round 261\n", + "Round 262\n", + "Round 263\n", + "Round 264\n", + "Round 265\n", + "Round 266\n", + "Round 267\n", + "Round 268\n", + "Round 269\n", + "Round 270\n", + "Round 271\n", + "Round 272\n", + "Round 273\n", + "Round 274\n", + "Round 275\n", + "Round 276\n", + "Round 277\n", + "Round 278\n", + "Round 279\n", + "Round 280\n", + "Round 281\n", + "Round 282\n", + "Round 283\n", + "Round 284\n", + "Round 285\n", + "Round 286\n", + "Round 287\n", + "Round 288\n", + "Round 289\n", + "Round 290\n", + "Round 291\n", + "Round 292\n", + "Round 293\n", + "Round 294\n", + "Round 295\n", + "Round 296\n", + "Round 297\n", + "Round 298\n", + "WAR!\n", + "Round 299\n", + "Round 300\n", + "Round 301\n", + "Round 302\n", + "Round 303\n", + "Round 304\n", + "Round 305\n", + "Round 306\n", + "Round 307\n", + "Round 308\n", + "Round 309\n", + "Round 310\n", + "Round 311\n", + "Round 312\n", + "Round 313\n", + "Round 314\n", + "Round 315\n", + "Round 316\n", + "Round 317\n", + "Round 318\n", + "Round 319\n", + "Round 320\n", + "Round 321\n", + "Round 322\n", + "Round 323\n", + "WAR!\n", + "Round 324\n", + "Round 325\n", + "Round 326\n", + "Round 327\n", + "Round 328\n", + "Round 329\n", + "Round 330\n", + "Round 331\n", + "Round 332\n", + "Round 333\n", + "Round 334\n", + "Round 335\n", + "Round 336\n", + "Round 337\n", + "Round 338\n", + "Round 339\n", + "Round 340\n", + "Round 341\n", + "Round 342\n", + "Round 343\n", + "Round 344\n", + "Round 345\n", + "Round 346\n", + "Round 347\n", + "Round 348\n", + "Round 349\n", + "Round 350\n", + "Round 351\n", + "Round 352\n", + "Round 353\n", + "Round 354\n", + "Round 355\n", + "Round 356\n", + "Round 357\n", + "Round 358\n", + "Round 359\n", + "Round 360\n", + "Round 361\n", + "Round 362\n", + "Round 363\n", + "Round 364\n", + "Round 365\n", + "Round 366\n", + "Round 367\n", + "Round 368\n", + "Round 369\n", + "Round 370\n", + "Round 371\n", + "Round 372\n", + "WAR!\n", + "Round 373\n", + "Round 374\n", + "WAR!\n", + "Round 375\n", + "Round 376\n", + "Round 377\n", + "Round 378\n", + "Round 379\n", + "Round 380\n", + "Round 381\n", + "Round 382\n", + "Round 383\n", + "Round 384\n", + "Round 385\n", + "Round 386\n", + "Round 387\n", + "Round 388\n", + "Round 389\n", + "Round 390\n", + "Round 391\n", + "Round 392\n", + "Round 393\n", + "Round 394\n", + "Round 395\n", + "Round 396\n", + "Round 397\n", + "Round 398\n", + "Round 399\n", + "Round 400\n", + "Round 401\n", + "Round 402\n", + "Round 403\n", + "Round 404\n", + "Round 405\n", + "Round 406\n", + "Round 407\n", + "Round 408\n", + "Round 409\n", + "Round 410\n", + "Round 411\n", + "Round 412\n", + "Round 413\n", + "Round 414\n", + "Round 415\n", + "Round 416\n", + "Round 417\n", + "Round 418\n", + "Round 419\n", + "Round 420\n", + "Round 421\n", + "Round 422\n", + "Round 423\n", + "Round 424\n", + "Round 425\n", + "Round 426\n", + "Round 427\n", + "Round 428\n", + "Round 429\n", + "Round 430\n", + "Round 431\n", + "Round 432\n", + "Round 433\n", + "Round 434\n", + "Round 435\n", + "Round 436\n", + "Round 437\n", + "Round 438\n", + "Round 439\n", + "Round 440\n", + "Round 441\n", + "Round 442\n", + "Round 443\n", + "Round 444\n", + "Round 445\n", + "Round 446\n", + "Round 447\n", + "Round 448\n", + "Round 449\n", + "Round 450\n", + "Round 451\n", + "Round 452\n", + "Round 453\n", + "Round 454\n", + "Round 455\n", + "Round 456\n", + "Round 457\n", + "Round 458\n", + "Round 459\n", + "Round 460\n", + "Round 461\n", + "Round 462\n", + "Round 463\n", + "Round 464\n", + "Round 465\n", + "Round 466\n", + "Round 467\n", + "Round 468\n", + "Round 469\n", + "Round 470\n", + "Round 471\n", + "Round 472\n", + "Round 473\n", + "Round 474\n", + "Round 475\n", + "Round 476\n", + "Round 477\n", + "Round 478\n", + "Round 479\n", + "Round 480\n", + "Round 481\n", + "Round 482\n", + "Round 483\n", + "Round 484\n", + "Round 485\n", + "Round 486\n", + "Round 487\n", + "Round 488\n", + "Round 489\n", + "Round 490\n", + "Round 491\n", + "Round 492\n", + "Round 493\n", + "Round 494\n", + "Round 495\n", + "Round 496\n", + "Round 497\n", + "Round 498\n", + "Round 499\n", + "Round 500\n", + "Round 501\n", + "Round 502\n", + "Round 503\n", + "Round 504\n", + "Round 505\n", + "Round 506\n", + "Round 507\n", + "Round 508\n", + "Round 509\n", + "Round 510\n", + "Round 511\n", + "Round 512\n", + "WAR!\n", + "Round 513\n", + "Round 514\n", + "Round 515\n", + "Round 516\n", + "Round 517\n", + "Round 518\n", + "Round 519\n", + "Round 520\n", + "Round 521\n", + "Round 522\n", + "Round 523\n", + "Round 524\n", + "Round 525\n", + "Round 526\n", + "Round 527\n", + "Round 528\n", + "Round 529\n", + "Round 530\n", + "Round 531\n", + "Round 532\n", + "Round 533\n", + "Round 534\n", + "Round 535\n", + "Round 536\n", + "Round 537\n", + "Round 538\n", + "Round 539\n", + "Round 540\n", + "Round 541\n", + "Round 542\n", + "Round 543\n", + "Round 544\n", + "Round 545\n", + "Round 546\n", + "Round 547\n", + "Round 548\n", + "Round 549\n", + "Round 550\n", + "Round 551\n", + "Round 552\n", + "Round 553\n", + "Round 554\n", + "WAR!\n", + "Round 555\n", + "Round 556\n", + "Round 557\n", + "Round 558\n", + "Round 559\n", + "Round 560\n", + "Round 561\n", + "Round 562\n", + "Round 563\n", + "Round 564\n", + "Round 565\n", + "Round 566\n", + "Round 567\n", + "Round 568\n", + "Round 569\n", + "Round 570\n", + "Round 571\n", + "Round 572\n", + "Round 573\n", + "WAR!\n", + "Round 574\n", + "Round 575\n", + "Round 576\n", + "Round 577\n", + "Round 578\n", + "Round 579\n", + "Round 580\n", + "Round 581\n", + "Round 582\n", + "Round 583\n", + "Round 584\n", + "Round 585\n", + "Round 586\n", + "Round 587\n", + "Round 588\n", + "Round 589\n", + "Round 590\n", + "Round 591\n", + "Round 592\n", + "Round 593\n", + "Round 594\n", + "Round 595\n", + "Round 596\n", + "Round 597\n", + "Round 598\n", + "Round 599\n", + "Round 600\n", + "Round 601\n", + "Round 602\n", + "Round 603\n", + "Round 604\n", + "Round 605\n", + "Round 606\n", + "Round 607\n", + "Round 608\n", + "Round 609\n", + "Round 610\n", + "Round 611\n", + "Round 612\n", + "Round 613\n", + "Round 614\n", + "Round 615\n", + "Round 616\n", + "Round 617\n", + "Round 618\n", + "Round 619\n", + "Round 620\n", + "Round 621\n", + "Round 622\n", + "Round 623\n", + "Round 624\n", + "Round 625\n", + "Round 626\n", + "Round 627\n", + "Round 628\n", + "Round 629\n", + "Round 630\n", + "Round 631\n", + "Round 632\n", + "Round 633\n", + "Round 634\n", + "Round 635\n", + "Round 636\n", + "Round 637\n", + "Round 638\n", + "Round 639\n", + "Round 640\n", + "Round 641\n", + "Round 642\n", + "Round 643\n", + "Round 644\n", + "Round 645\n", + "Round 646\n", + "Round 647\n", + "Round 648\n", + "Round 649\n", + "Round 650\n", + "Round 651\n", + "Round 652\n", + "Round 653\n", + "Round 654\n", + "Round 655\n", + "Round 656\n", + "Round 657\n", + "Round 658\n", + "Round 659\n", + "Round 660\n", + "Round 661\n", + "Round 662\n", + "Round 663\n", + "Round 664\n", + "Round 665\n", + "Round 666\n", + "Round 667\n", + "Round 668\n", + "Round 669\n", + "Round 670\n", + "Round 671\n", + "Round 672\n", + "Round 673\n", + "Round 674\n", + "Round 675\n", + "Round 676\n", + "Round 677\n", + "Round 678\n", + "Round 679\n", + "Round 680\n", + "Round 681\n", + "Round 682\n", + "Round 683\n", + "Round 684\n", + "Round 685\n", + "Round 686\n", + "Round 687\n", + "Round 688\n", + "Round 689\n", + "Round 690\n", + "Round 691\n", + "Round 692\n", + "Round 693\n", + "Round 694\n", + "Round 695\n", + "Round 696\n", + "Round 697\n", + "Round 698\n", + "Round 699\n", + "Round 700\n", + "Round 701\n", + "Round 702\n", + "Round 703\n", + "Round 704\n", + "Round 705\n", + "Round 706\n", + "Round 707\n", + "Round 708\n", + "Round 709\n", + "Round 710\n", + "Round 711\n", + "Round 712\n", + "Round 713\n", + "Round 714\n", + "Round 715\n", + "Round 716\n", + "Round 717\n", + "Round 718\n", + "Round 719\n", + "Round 720\n", + "Round 721\n", + "Round 722\n", + "Round 723\n", + "Round 724\n", + "Round 725\n", + "Round 726\n", + "Round 727\n", + "Round 728\n", + "Round 729\n", + "Round 730\n", + "Round 731\n", + "Round 732\n", + "Round 733\n", + "Round 734\n", + "Round 735\n", + "Round 736\n", + "Round 737\n", + "Round 738\n", + "Round 739\n", + "Round 740\n", + "Round 741\n", + "Round 742\n", + "Round 743\n", + "Round 744\n", + "Round 745\n", + "Round 746\n", + "Round 747\n", + "Round 748\n", + "Round 749\n", + "Round 750\n", + "Round 751\n", + "Round 752\n", + "WAR!\n", + "Round 753\n", + "Round 754\n", + "Round 755\n", + "Round 756\n", + "Round 757\n", + "Round 758\n", + "Round 759\n", + "Round 760\n", + "Round 761\n", + "Round 762\n", + "Round 763\n", + "Round 764\n", + "Round 765\n", + "Round 766\n", + "Round 767\n", + "Round 768\n", + "Round 769\n", + "Round 770\n", + "Round 771\n", + "Round 772\n", + "Round 773\n", + "Round 774\n", + "Round 775\n", + "Round 776\n", + "Round 777\n", + "Round 778\n", + "Round 779\n", + "Round 780\n", + "Round 781\n", + "Round 782\n", + "Round 783\n", + "Round 784\n", + "Round 785\n", + "Round 786\n", + "Round 787\n", + "Round 788\n", + "Round 789\n", + "Round 790\n", + "Round 791\n", + "Round 792\n", + "Round 793\n", + "Round 794\n", + "Round 795\n", + "Round 796\n", + "Round 797\n", + "Round 798\n", + "Round 799\n", + "Round 800\n", + "Round 801\n", + "Round 802\n", + "Round 803\n", + "Round 804\n", + "Round 805\n", + "Round 806\n", + "Round 807\n", + "Round 808\n", + "Round 809\n", + "Round 810\n", + "Round 811\n", + "Round 812\n", + "Round 813\n", + "Round 814\n", + "Round 815\n", + "Round 816\n", + "Round 817\n", + "Round 818\n", + "Round 819\n", + "Round 820\n", + "Round 821\n", + "WAR!\n", + "Round 822\n", + "Round 823\n", + "Round 824\n", + "Round 825\n", + "Round 826\n", + "Round 827\n", + "Round 828\n", + "Round 829\n", + "Round 830\n", + "Round 831\n", + "Round 832\n", + "Round 833\n", + "Round 834\n", + "Round 835\n", + "Round 836\n", + "Round 837\n", + "Round 838\n", + "Round 839\n", + "Round 840\n", + "Round 841\n", + "Round 842\n", + "Round 843\n", + "Round 844\n", + "Round 845\n", + "Round 846\n", + "Round 847\n", + "WAR!\n", + "Round 848\n", + "Round 849\n", + "Round 850\n", + "Round 851\n", + "Round 852\n", + "Round 853\n", + "Round 854\n", + "Round 855\n", + "Round 856\n", + "Round 857\n", + "WAR!\n", + "Round 858\n", + "Round 859\n", + "Round 860\n", + "Round 861\n", + "Round 862\n", + "Round 863\n", + "Round 864\n", + "Round 865\n", + "Round 866\n", + "Round 867\n", + "Round 868\n", + "Round 869\n", + "Round 870\n", + "Round 871\n", + "Round 872\n", + "Round 873\n", + "Round 874\n", + "Round 875\n", + "Round 876\n", + "Round 877\n", + "Round 878\n", + "Round 879\n", + "Round 880\n", + "Round 881\n", + "Round 882\n", + "Round 883\n", + "Round 884\n", + "Round 885\n", + "Round 886\n", + "Round 887\n", + "Round 888\n", + "Round 889\n", + "Round 890\n", + "Round 891\n", + "Round 892\n", + "Round 893\n", + "Round 894\n", + "Round 895\n", + "Round 896\n", + "Round 897\n", + "Round 898\n", + "Round 899\n", + "Round 900\n", + "Round 901\n", + "Round 902\n", + "Round 903\n", + "Round 904\n", + "Round 905\n", + "Round 906\n", + "Round 907\n", + "Round 908\n", + "Round 909\n", + "Round 910\n", + "Round 911\n", + "Round 912\n", + "Round 913\n", + "Round 914\n", + "Round 915\n", + "Round 916\n", + "Round 917\n", + "Round 918\n", + "Round 919\n", + "Round 920\n", + "Round 921\n", + "Round 922\n", + "Round 923\n", + "Round 924\n", + "Round 925\n", + "Round 926\n", + "Round 927\n", + "Round 928\n", + "Round 929\n", + "WAR!\n", + "Round 930\n", + "Round 931\n", + "Round 932\n", + "Round 933\n", + "Round 934\n", + "Round 935\n", + "Round 936\n", + "Round 937\n", + "Round 938\n", + "Round 939\n", + "Round 940\n", + "Round 941\n", + "Round 942\n", + "Round 943\n", + "Round 944\n", + "Round 945\n", + "Round 946\n", + "Round 947\n", + "Round 948\n", + "Round 949\n", + "Round 950\n", + "Round 951\n", + "Round 952\n", + "Round 953\n", + "Round 954\n", + "Round 955\n", + "Round 956\n", + "Round 957\n", + "Round 958\n", + "Round 959\n", + "Round 960\n", + "Round 961\n", + "Round 962\n", + "Round 963\n", + "Round 964\n", + "Round 965\n", + "Round 966\n", + "Round 967\n", + "Round 968\n", + "Round 969\n", + "Round 970\n", + "Round 971\n", + "Round 972\n", + "Round 973\n", + "Round 974\n", + "Round 975\n", + "Round 976\n", + "Round 977\n", + "Round 978\n", + "Round 979\n", + "Round 980\n", + "Round 981\n", + "Round 982\n", + "Round 983\n", + "Round 984\n", + "Round 985\n", + "Round 986\n", + "Round 987\n", + "Round 988\n", + "Round 989\n", + "Round 990\n", + "Round 991\n", + "Round 992\n", + "Round 993\n", + "Round 994\n", + "Round 995\n", + "Round 996\n", + "Round 997\n", + "Round 998\n", + "Round 999\n", + "Round 1000\n", + "Round 1001\n", + "Round 1002\n", + "Round 1003\n", + "Round 1004\n", + "Round 1005\n", + "Round 1006\n", + "Round 1007\n", + "Round 1008\n", + "Round 1009\n", + "Round 1010\n", + "Round 1011\n", + "Round 1012\n", + "Round 1013\n", + "Round 1014\n", + "Round 1015\n", + "Round 1016\n", + "Round 1017\n", + "WAR!\n", + "Round 1018\n", + "Round 1019\n", + "Round 1020\n", + "Round 1021\n", + "Round 1022\n", + "Round 1023\n", + "Round 1024\n", + "Round 1025\n", + "Round 1026\n", + "Round 1027\n", + "Round 1028\n", + "Round 1029\n", + "Round 1030\n", + "Round 1031\n", + "Round 1032\n", + "Round 1033\n", + "Round 1034\n", + "Round 1035\n", + "Round 1036\n", + "Round 1037\n", + "Round 1038\n", + "Round 1039\n", + "Round 1040\n", + "Round 1041\n", + "Round 1042\n", + "Round 1043\n", + "Round 1044\n", + "Round 1045\n", + "WAR!\n", + "Round 1046\n", + "Round 1047\n", + "Round 1048\n", + "Round 1049\n", + "Round 1050\n", + "Round 1051\n", + "Round 1052\n", + "Round 1053\n", + "Round 1054\n", + "Round 1055\n", + "Round 1056\n", + "Round 1057\n", + "Round 1058\n", + "Round 1059\n", + "Round 1060\n", + "Round 1061\n", + "WAR!\n", + "Round 1062\n", + "Round 1063\n", + "Round 1064\n", + "Round 1065\n", + "Round 1066\n", + "Round 1067\n", + "Round 1068\n", + "Round 1069\n", + "Round 1070\n", + "Round 1071\n", + "Round 1072\n", + "Round 1073\n", + "Round 1074\n", + "Round 1075\n", + "Round 1076\n", + "Round 1077\n", + "Round 1078\n", + "Round 1079\n", + "Round 1080\n", + "Round 1081\n", + "Round 1082\n", + "Round 1083\n", + "Round 1084\n", + "Round 1085\n", + "Round 1086\n", + "Round 1087\n", + "Round 1088\n", + "Round 1089\n", + "Round 1090\n", + "Round 1091\n", + "Round 1092\n", + "Round 1093\n", + "Round 1094\n", + "Round 1095\n", + "Round 1096\n", + "Round 1097\n", + "Round 1098\n", + "Round 1099\n", + "Round 1100\n", + "Round 1101\n", + "Round 1102\n", + "WAR!\n", + "Round 1103\n", + "Round 1104\n", + "Round 1105\n", + "Round 1106\n", + "Round 1107\n", + "Round 1108\n", + "Round 1109\n", + "Round 1110\n", + "WAR!\n", + "Round 1111\n", + "Round 1112\n", + "Round 1113\n", + "Round 1114\n", + "Round 1115\n", + "Round 1116\n", + "Round 1117\n", + "Round 1118\n", + "Round 1119\n", + "Round 1120\n", + "Round 1121\n", + "Round 1122\n", + "Round 1123\n", + "Round 1124\n", + "WAR!\n", + "Round 1125\n", + "Round 1126\n", + "Round 1127\n", + "Round 1128\n", + "Round 1129\n", + "Round 1130\n", + "Round 1131\n", + "Round 1132\n", + "Round 1133\n", + "Round 1134\n", + "Round 1135\n", + "Round 1136\n", + "Round 1137\n", + "Round 1138\n", + "Round 1139\n", + "Round 1140\n", + "Round 1141\n", + "Round 1142\n", + "Round 1143\n", + "Round 1144\n", + "Round 1145\n", + "Round 1146\n", + "Round 1147\n", + "Round 1148\n", + "Round 1149\n", + "Round 1150\n", + "Round 1151\n", + "Round 1152\n", + "Round 1153\n", + "Round 1154\n", + "WAR!\n", + "Round 1155\n", + "Round 1156\n", + "Round 1157\n", + "Round 1158\n", + "Round 1159\n", + "Round 1160\n", + "Round 1161\n", + "Round 1162\n", + "Round 1163\n", + "Round 1164\n", + "Round 1165\n", + "Round 1166\n", + "Round 1167\n", + "Round 1168\n", + "Round 1169\n", + "Round 1170\n", + "Round 1171\n", + "Round 1172\n", + "Round 1173\n", + "Round 1174\n", + "Round 1175\n", + "Round 1176\n", + "Round 1177\n", + "Round 1178\n", + "Round 1179\n", + "Round 1180\n", + "Round 1181\n", + "Round 1182\n", + "Round 1183\n", + "Round 1184\n", + "Round 1185\n", + "Round 1186\n", + "Round 1187\n", + "Round 1188\n", + "Round 1189\n", + "Round 1190\n", + "Round 1191\n", + "Round 1192\n", + "Round 1193\n", + "Round 1194\n", + "Round 1195\n", + "Round 1196\n", + "Round 1197\n", + "Round 1198\n", + "Round 1199\n", + "Round 1200\n", + "Round 1201\n", + "Round 1202\n", + "Round 1203\n", + "Round 1204\n", + "Round 1205\n", + "Round 1206\n", + "Round 1207\n", + "Round 1208\n", + "Round 1209\n", + "Round 1210\n", + "Round 1211\n", + "Round 1212\n", + "Round 1213\n", + "Round 1214\n", + "Round 1215\n", + "Round 1216\n", + "Round 1217\n", + "Round 1218\n", + "Round 1219\n", + "Round 1220\n", + "Round 1221\n", + "Round 1222\n", + "Round 1223\n", + "Round 1224\n", + "WAR!\n", + "Round 1225\n", + "Round 1226\n", + "Round 1227\n", + "Round 1228\n", + "Round 1229\n", + "Round 1230\n", + "WAR!\n", + "Round 1231\n", + "WAR!\n", + "Round 1232\n", + "Round 1233\n", + "Round 1234\n", + "Round 1235\n", + "Round 1236\n", + "Round 1237\n", + "Round 1238\n", + "Round 1239\n", + "WAR!\n", + "Round 1240\n", + "Round 1241\n", + "WAR!\n", + "Round 1242\n", + "Round 1243\n", + "Round 1244\n", + "Round 1245\n", + "Round 1246\n", + "Round 1247\n", + "Round 1248\n", + "WAR!\n", + "WAR!\n", + "Round 1249\n", + "WAR!\n", + "Round 1250\n", + "Round 1251\n", + "Round 1252\n", + "Round 1253\n", + "Round 1254\n", + "Round 1255\n", + "Round 1256\n", + "Round 1257\n", + "Round 1258\n", + "Round 1259\n", + "Round 1260\n", + "Round 1261\n", + "Round 1262\n", + "Round 1263\n", + "Round 1264\n", + "Round 1265\n", + "Round 1266\n", + "Round 1267\n", + "Round 1268\n", + "Round 1269\n", + "WAR!\n", + "Round 1270\n", + "Round 1271\n", + "Round 1272\n", + "Round 1273\n", + "Round 1274\n", + "Round 1275\n", + "Round 1276\n", + "Round 1277\n", + "Round 1278\n", + "Round 1279\n", + "Round 1280\n", + "Round 1281\n", + "Round 1282\n", + "Round 1283\n", + "Round 1284\n", + "Round 1285\n", + "Round 1286\n", + "WAR!\n", + "Round 1287\n", + "Round 1288\n", + "Round 1289\n", + "Round 1290\n", + "Round 1291\n", + "Round 1292\n", + "Round 1293\n", + "Round 1294\n", + "Round 1295\n", + "Round 1296\n", + "WAR!\n", + "Round 1297\n", + "Round 1298\n", + "Round 1299\n", + "Round 1300\n", + "Round 1301\n", + "Round 1302\n", + "Round 1303\n", + "Round 1304\n", + "Round 1305\n", + "Round 1306\n", + "Round 1307\n", + "Round 1308\n", + "Round 1309\n", + "Round 1310\n", + "Round 1311\n", + "Round 1312\n", + "Round 1313\n", + "Round 1314\n", + "Round 1315\n", + "WAR!\n", + "Round 1316\n", + "Round 1317\n", + "Round 1318\n", + "Round 1319\n", + "Round 1320\n", + "Round 1321\n", + "Round 1322\n", + "Round 1323\n", + "Round 1324\n", + "Round 1325\n", + "Round 1326\n", + "Round 1327\n", + "Round 1328\n", + "Round 1329\n", + "Round 1330\n", + "Round 1331\n", + "Round 1332\n", + "Round 1333\n", + "Round 1334\n", + "Round 1335\n", + "WAR!\n", + "Round 1336\n", + "Round 1337\n", + "Round 1338\n", + "Round 1339\n", + "Round 1340\n", + "Round 1341\n", + "Round 1342\n", + "Round 1343\n", + "Round 1344\n", + "Round 1345\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Round 1346\n", + "Round 1347\n", + "Round 1348\n", + "Round 1349\n", + "Round 1350\n", + "Round 1351\n", + "Round 1352\n", + "Round 1353\n", + "Round 1354\n", + "Round 1355\n", + "Round 1356\n", + "WAR!\n", + "Round 1357\n", + "Round 1358\n", + "Round 1359\n", + "Round 1360\n", + "Round 1361\n", + "Round 1362\n", + "Round 1363\n", + "Round 1364\n", + "Round 1365\n", + "Round 1366\n", + "Round 1367\n", + "Round 1368\n", + "Round 1369\n", + "WAR!\n", + "Round 1370\n", + "Round 1371\n", + "Round 1372\n", + "Round 1373\n", + "WAR!\n", + "Round 1374\n", + "Round 1375\n", + "Round 1376\n", + "Round 1377\n", + "Round 1378\n", + "Round 1379\n", + "Round 1380\n", + "Round 1381\n", + "Round 1382\n", + "Round 1383\n", + "Round 1384\n", + "Round 1385\n", + "Round 1386\n", + "Round 1387\n", + "Round 1388\n", + "Round 1389\n", + "Round 1390\n", + "Round 1391\n", + "WAR!\n", + "Round 1392\n", + "Round 1393\n", + "Round 1394\n", + "Round 1395\n", + "Round 1396\n", + "Round 1397\n", + "WAR!\n", + "Round 1398\n", + "Round 1399\n", + "Round 1400\n", + "Round 1401\n", + "Round 1402\n", + "Round 1403\n", + "Round 1404\n", + "Round 1405\n", + "WAR!\n", + "Player One unable to play war! Game Over at War\n", + "Player Two Wins! Player One Loses!\n" + ] + } + ], + "source": [ + "round_num = 0\n", + "\n", + "while game_on:\n", + " \n", + " round_num += 1\n", + " print(f\"Round {round_num}\")\n", + " \n", + " if len(player_one.all_cards)==0:\n", + " print('Player One , out of cards! Player 2 Wins!')\n", + " game_on = False\n", + " break\n", + " \n", + " if len(player_two.all_cards)==0:\n", + " print('Player Two , out of cards! Player 1 Wins!')\n", + " game_on = False\n", + " break\n", + " \n", + " # START A NEW ROUND\n", + " player_one_cards = []\n", + " player_one_cards.append(player_one.remove_one())\n", + " \n", + " player_two_cards = []\n", + " player_two_cards.append(player_two.remove_one())\n", + "\n", + "\n", + " \n", + " #while at_war\n", + " at_war = True\n", + " \n", + " while at_war:\n", + " \n", + " if player_one_cards[-1].value > player_two_cards[-1].value:\n", + " player_one.add_cards(player_one_cards)\n", + " player_one.add_cards(player_two_cards)\n", + " \n", + " at_war = False\n", + " \n", + " \n", + " elif player_one_cards[-1].value < player_two_cards[-1].value:\n", + " player_two.add_cards(player_one_cards)\n", + " player_two.add_cards(player_two_cards)\n", + " \n", + " at_war = False\n", + " \n", + " else:\n", + " print('WAR!')\n", + " \n", + " if len(player_one.all_cards) < 5:\n", + " print(\"Player One unable to play war! Game Over at War\")\n", + " print(\"Player Two Wins! Player One Loses!\")\n", + " game_on = False\n", + " break\n", + "\n", + " elif len(player_two.all_cards) < 5:\n", + " print(\"Player Two unable to play war! Game Over at War\")\n", + " print(\"Player One Wins! Player One Loses!\")\n", + " game_on = False\n", + " break\n", + " # Otherwise, we're still at war, so we'll add the next cards\n", + " else:\n", + " for num in range(5):\n", + " player_one_cards.append(player_one.remove_one())\n", + " player_two_cards.append(player_two.remove_one())\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c1af66cf", + "metadata": {}, + "outputs": [], + "source": [ + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/dice_rolling.py b/dice_rolling.py new file mode 100644 index 0000000..9b7d64c --- /dev/null +++ b/dice_rolling.py @@ -0,0 +1,31 @@ +import random + +#Enter the minimum and maximum limits of the dice rolls below + +min_val = 1 + +max_val = 6 + +#the variable that stores the user’s decision + +roll_again = "yes" + +#The dice roll loop if the user wants to continue + +while roll_again == "yes" or roll_again == "y": + + print("Dices rolling...") + + print("The values are :") + +#Printing the randomly generated variable of the first dice + + print(random.randint(min_val, max_val)) + +#Printing the randomly generated variable of the second dice + + print(random.randint(min_val, max_val)) + +#Here the user enters yes or y to continue and any other input ends the program + + roll_again = input("Roll the Dices Again?") \ No newline at end of file