summaryrefslogtreecommitdiff
path: root/C++_from_the_Ground
diff options
context:
space:
mode:
authorroot2014-07-08 17:34:15 +0530
committerroot2014-07-08 17:34:15 +0530
commit14e9455fda0dbd61d1e8539d9e9b8ce303e81d06 (patch)
treefc89a07c1dcf8a262f3e72ba55cd8a014a2fb349 /C++_from_the_Ground
parentba659b4b63e3181ffa039371e19ab59388ded54a (diff)
downloadPython-Textbook-Companions-14e9455fda0dbd61d1e8539d9e9b8ce303e81d06.tar.gz
Python-Textbook-Companions-14e9455fda0dbd61d1e8539d9e9b8ce303e81d06.tar.bz2
Python-Textbook-Companions-14e9455fda0dbd61d1e8539d9e9b8ce303e81d06.zip
removing unwanted files
Diffstat (limited to 'C++_from_the_Ground')
-rwxr-xr-xC++_from_the_Ground/Chapter_10(1).ipynb560
-rwxr-xr-xC++_from_the_Ground/Chapter_11(1).ipynb877
-rwxr-xr-xC++_from_the_Ground/Chapter_12(1).ipynb904
-rwxr-xr-xC++_from_the_Ground/Chapter_13(1).ipynb883
-rwxr-xr-xC++_from_the_Ground/Chapter_14(1).ipynb924
-rwxr-xr-xC++_from_the_Ground/Chapter_15(1).ipynb427
-rwxr-xr-xC++_from_the_Ground/Chapter_16(1).ipynb674
-rwxr-xr-xC++_from_the_Ground/Chapter_17(1).ipynb730
-rwxr-xr-xC++_from_the_Ground/Chapter_18(1).ipynb881
-rwxr-xr-xC++_from_the_Ground/Chapter_19(1).ipynb725
-rwxr-xr-xC++_from_the_Ground/Chapter_2(1).ipynb416
-rwxr-xr-xC++_from_the_Ground/Chapter_20(2).ipynb937
-rwxr-xr-xC++_from_the_Ground/Chapter_21(1).ipynb1187
-rwxr-xr-xC++_from_the_Ground/Chapter_22(1).ipynb347
-rwxr-xr-xC++_from_the_Ground/Chapter_3(1).ipynb473
-rwxr-xr-xC++_from_the_Ground/Chapter_4(1).ipynb1340
-rwxr-xr-xC++_from_the_Ground/Chapter_5(1).ipynb1191
-rwxr-xr-xC++_from_the_Ground/Chapter_6(1).ipynb558
-rwxr-xr-xC++_from_the_Ground/Chapter_7(1).ipynb908
-rwxr-xr-xC++_from_the_Ground/Chapter_8(1).ipynb1783
-rwxr-xr-xC++_from_the_Ground/Chapter_9(1).ipynb813
21 files changed, 0 insertions, 17538 deletions
diff --git a/C++_from_the_Ground/Chapter_10(1).ipynb b/C++_from_the_Ground/Chapter_10(1).ipynb
deleted file mode 100755
index b19c3a4c..00000000
--- a/C++_from_the_Ground/Chapter_10(1).ipynb
+++ /dev/null
@@ -1,560 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:73c04e2c14bfab695e4acf07dc7752334b6372d624570a4e051fd91aeeb761f7"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 10: Structures and Unions<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.1, Page Number: 223<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class inv_type:\n",
- " def __init__(self):\n",
- " self.item=None\n",
- " self.cost=0\n",
- " self.retail=0\n",
- " self.on_hand=0\n",
- " self.lead_time=0\n",
- "\n",
- "#Variable declaration\n",
- "size=100 \n",
- "invtry = []*size\n",
- "i=5 #User iput for menu selection\n",
- "\n",
- "#Initialize the array\n",
- "def init_list():\n",
- " for t in range(size):\n",
- " invtry.append(inv_type())\n",
- " \n",
- "#get a menu selection\n",
- "def menu():\n",
- " global i\n",
- " print \"(E)nter\"\n",
- " print \"(D)isplay\"\n",
- " print \"(U)pdate\"\n",
- " print \"(Q)uit\"\n",
- " print \"choose one: \"\n",
- " i-=1\n",
- " return i\n",
- "\n",
- "#enter items into the list\n",
- "def enter():\n",
- " #find the first free structure\n",
- " for i in range(size):\n",
- " if not(invtry[i].item==None):\n",
- " break\n",
- " #i will be size if list is full\n",
- " if i==size:\n",
- " print \"List full.\"\n",
- " return\n",
- " input(i)\n",
- " \n",
- "#Input the information\n",
- "def input(i):\n",
- " #Enter information; User input\n",
- " invtry[i].item=\"Gloves\"\n",
- " invtry[i].cost=10\n",
- " invtry[i].retail=25\n",
- " invtry[i].on_hand=50\n",
- " invtry[i].lead_time=10\n",
- " \n",
- "#Modify an existing item\n",
- "def update():\n",
- " name=\"Gloves\" #User input\n",
- " for i in range(size):\n",
- " if not(name==invtry[i].item):\n",
- " break\n",
- " if i==size:\n",
- " print \"Item not found.\"\n",
- " return\n",
- " print \"Enter new information.\"\n",
- " input(i)\n",
- " \n",
- "#Display the list\n",
- "def display():\n",
- " for t in range(size):\n",
- " if not(invtry[t].item==None):\n",
- " print invtry[t].item\n",
- " print \"Cost: $\",invtry[t].cost\n",
- " print \"Retail: $\",invtry[t].retail\n",
- " print \"On hand: \",invtry[t].on_hand\n",
- " print \"Resupply time: \",invtry[t].lead_time,\" days\"\n",
- " \n",
- "\n",
- "init_list()\n",
- "while True:\n",
- " choice=menu()\n",
- " if choice==4:\n",
- " enter()\n",
- " elif choice==3:\n",
- " display()\n",
- " elif choice==2:\n",
- " update()\n",
- " elif choice==1:\n",
- " break"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(E)nter\n",
- "(D)isplay\n",
- "(U)pdate\n",
- "(Q)uit\n",
- "choose one: \n",
- "(E)nter\n",
- "(D)isplay\n",
- "(U)pdate\n",
- "(Q)uit\n",
- "choose one: \n",
- "Gloves\n",
- "Cost: $ 10\n",
- "Retail: $ 25\n",
- "On hand: 50\n",
- "Resupply time: 10 days\n",
- "(E)nter\n",
- "(D)isplay\n",
- "(U)pdate\n",
- "(Q)uit\n",
- "choose one: \n",
- "Enter new information.\n",
- "(E)nter\n",
- "(D)isplay\n",
- "(U)pdate\n",
- "(Q)uit\n",
- "choose one: \n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.2, Page Number: 226<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class sample:\n",
- " a=None\n",
- " ch=None\n",
- " \n",
- "def f1(parm):\n",
- " print parm.a,\" \",parm.ch\n",
- "\n",
- "#declare arg\n",
- "arg=sample() \n",
- "\n",
- "#initialize arg\n",
- "arg.a=1000\n",
- "arg.ch='X'\n",
- "\n",
- "#call function\n",
- "f1(arg)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1000 X\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.3, Page Number: 227<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class stype:\n",
- " a=None\n",
- " b=None\n",
- "\n",
- "#Variable declaration\n",
- "svar1=stype()\n",
- "svar2=stype()\n",
- "\n",
- "svar1.a=svar1.b=10\n",
- "svar2.a=svar2.b=20\n",
- "\n",
- "print \"Structures before assignment.\"\n",
- "print \"svar1: \",svar1.a,' ',svar1.b\n",
- "print \"svar1: \",svar2.a,' ',svar2.b\n",
- "\n",
- "svar2=svar1 #assign structures\n",
- "\n",
- "#Result\n",
- "print \"\\nStructures before assignment.\"\n",
- "print \"svar1: \",svar1.a,' ',svar1.b\n",
- "print \"svar1: \",svar2.a,' ',svar2.b"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Structures before assignment.\n",
- "svar1: 10 10\n",
- "svar1: 20 20\n",
- "\n",
- "Structures before assignment.\n",
- "svar1: 10 10\n",
- "svar1: 10 10\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.4, Page Number: 230<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import datetime\n",
- "\n",
- "date=datetime.datetime.now()\n",
- "\n",
- "#Result\n",
- "print date.time()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "17:06:28.236000\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.5, Page Number: 231<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import datetime\n",
- "\n",
- "date=datetime.datetime.now()\n",
- "\n",
- "#Result\n",
- "print date.ctime()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Sat Sep 14 17:07:14 2013\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.6, Page Number: 232<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class mystruct:\n",
- " a=None\n",
- " b=None\n",
- "\n",
- "def f(var):\n",
- " var[0].a=var[0].a*var[0].a\n",
- " var[0].b=var[0].b/var[0].b\n",
- " return var[0]\n",
- " \n",
- "#Variable declaration\n",
- "x=[]\n",
- "x.append(mystruct())\n",
- "y=mystruct()\n",
- "\n",
- "#Initializing\n",
- "x[0].a=10\n",
- "x[0].b=20\n",
- "\n",
- "print \"Original x.a and x.b: \",x[0].a,' ',x[0].b\n",
- "\n",
- "y=f(x) #function call\n",
- "\n",
- "#Result\n",
- "print \"Modified x.a and x.b: \",x[0].a,' ',x[0].b\n",
- "print \"Modified y.a and y.b: \",y.a,' ',y.b\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original x.a and x.b: 10 20\n",
- "Modified x.a and x.b: 100 1\n",
- "Modified y.a and y.b: 100 1\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.7, Page Number: 239<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class swap_bytes:\n",
- " ch=[0,0]\n",
- "\n",
- "#Exchange of bytes\n",
- "def disp_binary(u):\n",
- " t=128\n",
- " while not(t==0):\n",
- " if u&t:\n",
- " print \"1 \",\n",
- " else:\n",
- " print \"0 \",\n",
- " t=t/2\n",
- "\n",
- "#Variable declaration\n",
- "sb=swap_bytes()\n",
- "\n",
- "sb.ch[0]=15\n",
- "\n",
- "print \"Original bytes: \",\n",
- "disp_binary(sb.ch[1])\n",
- "disp_binary(sb.ch[0])\n",
- "\n",
- "#Exchange bytes\n",
- "temp=sb.ch[0]\n",
- "sb.ch[0]=sb.ch[1]\n",
- "sb.ch[1]=temp\n",
- "\n",
- "#Result\n",
- "print \"\\nExchanged bytes: \",\n",
- "disp_binary(sb.ch[1])\n",
- "disp_binary(sb.ch[0])\n",
- "\n",
- "\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original bytes: 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 \n",
- "Exchanged bytes: 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 \n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.8, Page Number: 240<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "ch='a'\n",
- "\n",
- "while True:\n",
- " print \"\\n\",ch,\n",
- " print bin(ord(ch)) #Display the bit pattern for each character\n",
- " ch=chr(ord(ch)+1)\n",
- " if ch=='r':\n",
- " break"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n",
- "a 0b1100001\n",
- "\n",
- "b 0b1100010\n",
- "\n",
- "c 0b1100011\n",
- "\n",
- "d 0b1100100\n",
- "\n",
- "e 0b1100101\n",
- "\n",
- "f 0b1100110\n",
- "\n",
- "g 0b1100111\n",
- "\n",
- "h 0b1101000\n",
- "\n",
- "i 0b1101001\n",
- "\n",
- "j 0b1101010\n",
- "\n",
- "k 0b1101011\n",
- "\n",
- "l 0b1101100\n",
- "\n",
- "m 0b1101101\n",
- "\n",
- "n 0b1101110\n",
- "\n",
- "o 0b1101111\n",
- "\n",
- "p 0b1110000\n",
- "\n",
- "q 0b1110001\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 10.9, Page Number: 242<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "ch=['X','Y']\n",
- "c=\"\"\n",
- "def disp_bits(u):\n",
- " t=128\n",
- " global c\n",
- " while not(t==0):\n",
- " if u&t:\n",
- " c=c+\"1\"\n",
- " else:\n",
- " c=c+\"0\"\n",
- " t=t/2 \n",
- " return c\n",
- "\n",
- "#Result\n",
- "print \"union as chars: \",ch[0],ch[1]\n",
- "print \"union as integer: \",\n",
- "c= disp_bits(ord(ch[1]))\n",
- "c= disp_bits(ord(ch[0]))\n",
- "print int(str(c),2)\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "union as chars: X Y\n",
- "union as integer: 22872\n"
- ]
- }
- ],
- "prompt_number": 19
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_11(1).ipynb b/C++_from_the_Ground/Chapter_11(1).ipynb
deleted file mode 100755
index fdd70bcf..00000000
--- a/C++_from_the_Ground/Chapter_11(1).ipynb
+++ /dev/null
@@ -1,877 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:5428ee61d548a6c3eefd868dac96cac83b29f85d9bfd7876e9904bdfe87b0fad"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 11: Introducing the Class<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.1, Page Number: 249<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class queue:\n",
- " #Initialize the queue \n",
- " def __init__(self):\n",
- " self.__sloc=0\n",
- " self.__rloc=-1\n",
- " self.__q=[]\n",
- " \n",
- " #Put an integer into the queue\n",
- " def qput(self,i):\n",
- " if self.__sloc==100:\n",
- " print \"Queue is full.\"\n",
- " return\n",
- " self.__sloc+=1\n",
- " self.__q.append(i)\n",
- " \n",
- " #Get an integer from the queue\n",
- " def qget(self):\n",
- " if self.__rloc==self.__sloc:\n",
- " print \"Queue underflow\"\n",
- " return\n",
- " self.__rloc+=1\n",
- " return self.__q[self.__rloc] \n",
- " \n",
- "\n",
- " \n",
- "#Create two queue objects\n",
- "b=queue()\n",
- "a=queue()\n",
- "\n",
- "a.qput(10)\n",
- "b.qput(19)\n",
- "\n",
- "a.qput(20)\n",
- "b.qput(1)\n",
- "\n",
- "#Result\n",
- "print \"Contents of queue a: \",\n",
- "print a.qget(),' ',a.qget()\n",
- "\n",
- "print \"Contents of queue b: \",\n",
- "print b.qget(),' ',b.qget()\n",
- "\n",
- "\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Contents of queue a: 10 20\n",
- "Contents of queue b: 19 1\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.2, Page Number: 250<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- " \n",
- "class myclass:\n",
- " def __init__(self):\n",
- " self.__a=None #private member\n",
- " self.b=None #public member\n",
- " #public functions\n",
- " def setlab(self,i):\n",
- " self.__a=i #refer to a\n",
- " self.b=i*i #refer to b\n",
- " return\n",
- " def geta(self):\n",
- " return self.__a #refer to a\n",
- " def reset(self):\n",
- " #call setlab using self\n",
- " self.setlab(0) #the object is already known\n",
- " \n",
- " \n",
- "ob=myclass()\n",
- "ob.setlab(5) #set ob.a and ob.b\n",
- "print \"ob after setlab(5): \",ob.geta(),' ',\n",
- "print ob.b #can access b because it is public\n",
- "\n",
- "ob.b=20 #can access b because it is public\n",
- "print \"ob after ob.b=20: \",\n",
- "print ob.geta(),' ',ob.b\n",
- "\n",
- "ob.reset()\n",
- "print \"ob after ob.reset(): \",ob.geta(),' ',ob.b\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ob after setlab(5): 5 25\n",
- "ob after ob.b=20: 5 20\n",
- "ob after ob.reset(): 0 0\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.3, Page Number: 254<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class queue:\n",
- " \n",
- " #Constructor\n",
- " def __init__(self): \n",
- " self.__q=[]\n",
- " self.__rloc=-1\n",
- " self.__sloc=0\n",
- " print \"Queue initialized\"\n",
- " \n",
- " #Destructor\n",
- " def __del__(self):\n",
- " print (\"Queue destroyed\")\n",
- " \n",
- " #Put an integer into the queue\n",
- " def qput(self,i):\n",
- " if self.__sloc == 100:\n",
- " print \"Queue is full\"\n",
- " return \n",
- " self.__sloc+=1\n",
- " self.__q.append(i)\n",
- " \n",
- " #Get an integer from the queue\n",
- " def qget(self):\n",
- " if self.__rloc==self.__sloc:\n",
- " print \"Queue underflow\"\n",
- " return\n",
- " self.__rloc+=1\n",
- " return self.__q[self.__rloc]\n",
- " \n",
- "#Create two queue objects\n",
- "a=queue()\n",
- "\n",
- "\n",
- "a.qput(10)\n",
- "a.qput(20)\n",
- "b=queue()\n",
- "b.qput(19)\n",
- "\n",
- "b.qput(1)\n",
- "\n",
- "#Result\n",
- "print a.qget(),' ',\n",
- "print a.qget(),' ',\n",
- "print b.qget(),' ',\n",
- "print b.qget(),' '\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Queue initialized\n",
- "Queue destroyed\n",
- "Queue initialized\n",
- "Queue destroyed\n",
- "10 20 19 1 \n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.4, Page Number: 257<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class queue: \n",
- " \n",
- " #Constructor\n",
- " def __init__(self,i): \n",
- " self.__q=[]\n",
- " self.__rloc=-1\n",
- " self.__sloc=0\n",
- " self.__who=i\n",
- " print \"Queue \",self.__who,\" initialized.\"\n",
- " \n",
- " #Destructor\n",
- " def __del__():\n",
- " print \"Queue \",self.__who,\" destroyed\"\n",
- " \n",
- " #Put an integer into the queue\n",
- " def qput(self,i):\n",
- " if self.__sloc == 100:\n",
- " print \"Queue is full\"\n",
- " return \n",
- " self.__sloc+=1\n",
- " self.__q.append(i)\n",
- " \n",
- " #Get an integer from the queue\n",
- " def qget(self):\n",
- " if self.__rloc==self.__sloc:\n",
- " print \"Queue underflow\"\n",
- " return\n",
- " self.__rloc+=1\n",
- " return self.__q[self.__rloc]\n",
- " \n",
- "a=queue(1)\n",
- "b=queue(2)\n",
- "\n",
- "a.qput(10)\n",
- "b.qput(19)\n",
- "\n",
- "a.qput(20)\n",
- "b.qput(1)\n",
- "\n",
- "#Result\n",
- "print a.qget(),' ',\n",
- "print a.qget(),' ',\n",
- "print b.qget(),' ',\n",
- "print b.qget(),' '\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Queue 1 initialized.\n",
- "Queue destroyed\n",
- "Queue 2 initialized.\n",
- "Queue destroyed\n",
- "10 20 19 1 \n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.5, Page Number: 258<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class widget:\n",
- " \n",
- " #Pass two arguments to the constructor\n",
- " def __init__(self,a,b):\n",
- " self.__i=a\n",
- " self.__j=b\n",
- " \n",
- " def put_widget(self):\n",
- " print self.__i,\" \",self.__j\n",
- "\n",
- "#Initializing\n",
- "x=widget(10,20)\n",
- "y=widget(0,0)\n",
- "\n",
- "x.put_widget()\n",
- "y.put_widget()\n",
- "\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20\n",
- "0 0\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.6, Page Number: 259<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass:\n",
- " \n",
- " #Constructor\n",
- " def __init__(self,x):\n",
- " self.a=x\n",
- " #To get the vale of a\n",
- " def get_a(self):\n",
- " return self.a\n",
- "\n",
- "#Initializing\n",
- "ob=myclass(4)\n",
- "\n",
- "#Result\n",
- "print ob.get_a()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "4\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.7, Page Number: 260<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "class c1(Structure):\n",
- " _fields_=[(\"__i\", c_int)] #private member\n",
- " def get_i(self): #public finctions\n",
- " return self.__i\n",
- " def put_i(self,j):\n",
- " self.__i=j\n",
- "\n",
- "#Variable declaration\n",
- "s=c1()\n",
- "\n",
- "s.put_i(10)\n",
- "\n",
- "#Result\n",
- "print s.get_i()\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.8, Page Number: 261<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class c1:\n",
- " def __init__(self):\n",
- " self.__i=None #private member\n",
- " def get_i(self): #public finctions\n",
- " return self.__i\n",
- " def put_i(self,j):\n",
- " self.__i=j\n",
- "\n",
- "#Variable declaration\n",
- "s=c1()\n",
- "\n",
- "s.put_i(10)\n",
- "\n",
- "#Result\n",
- "print s.get_i()\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.9, Page Number: 263<h3> "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Creates a union\n",
- "class u_type(Union):\n",
- " _fields_ = [(\"i\",c_short),\n",
- " (\"ch\", c_char*2)]\n",
- " #Constructor\n",
- " def __init__(self,a):\n",
- " self.i=a\n",
- " \n",
- " #Show the characters that comprise a short int.\n",
- " def showchars(self):\n",
- " print self.ch[0]\n",
- " print self.ch[1]\n",
- " \n",
- " \n",
- "u=u_type(1000)\n",
- "\n",
- "#Displays char of 1000\n",
- "u.showchars()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\ufffd\n",
- "\u0003\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.10, Page Number: 264<h3> "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class c1:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " def get_i(self):\n",
- " return self.i\n",
- " def put_i(self,j):\n",
- " self.i=j\n",
- "\n",
- "#Variable declaration\n",
- "s=c1()\n",
- "\n",
- "s.put_i(10)\n",
- "\n",
- "#Result\n",
- "print s.get_i()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.11, Page Number: 265<h3> "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class c1:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " def get_i(self):\n",
- " return self.i\n",
- " def put_i(self,j):\n",
- " self.i=j\n",
- "\n",
- "#Variable declaration\n",
- "s=c1()\n",
- "\n",
- "s.put_i(10)\n",
- "\n",
- "#Result\n",
- "print s.get_i()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.12, Page Number: 267<h3> "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class display:\n",
- " def __init__(self):\n",
- " width=None\n",
- " height=None\n",
- " res=None\n",
- " def set_dim(self,w,h):\n",
- " self.width=w\n",
- " self.height=h\n",
- " def get_dim(self):\n",
- " return self.width,self.height\n",
- " def set_res(self,r):\n",
- " self.res=r\n",
- " def get_res(self):\n",
- " return self.res\n",
- " \n",
- "#Variable decleration\n",
- "names=[\"low\",\"medium\",\"high\"] \n",
- "(low,medium,high)=(0,1,2) #For enumeration type\n",
- "w=None\n",
- "h=None\n",
- "display_mode=[]*3\n",
- "\n",
- "for i in range(3):\n",
- " display_mode.append(display())\n",
- "\n",
- "#Initialize the array of objects using member functions\n",
- "display_mode[0].set_res(low)\n",
- "display_mode[0].set_dim(640,480)\n",
- "\n",
- "display_mode[1].set_res(medium)\n",
- "display_mode[1].set_dim(800,600)\n",
- "\n",
- "display_mode[2].set_res(high)\n",
- "display_mode[2].set_dim(1600,1200)\n",
- "\n",
- "#Result\n",
- "print \"Available display modes: \"\n",
- "for i in range(3):\n",
- " print names[display_mode[i].get_res()],\" : \",\n",
- " w,h=display_mode[i].get_dim()\n",
- " print w,\" by \",h"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Available display modes: \n",
- "low : 640 by 480\n",
- "medium : 800 by 600\n",
- "high : 1600 by 1200\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.13, Page Number: 268<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class samp:\n",
- " __a=None\n",
- " def __init__(self,n):\n",
- " self.__a=n\n",
- " def get_a(self):\n",
- " return self.__a\n",
- "\n",
- "#Initializing the list\n",
- "sampArray=[samp(-1),samp(-2),samp(-3),samp(-4)]\n",
- "\n",
- "#Display\n",
- "for i in range(4):\n",
- " print sampArray[i].get_a(),' ',"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "-1 -2 -3 -4 \n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.14, Page Number: 269<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class samp:\n",
- " __a=None\n",
- " __b=None\n",
- " def __init__(self,n,m):\n",
- " self.__a=n\n",
- " self.__b=m\n",
- " def get_a(self):\n",
- " return self.__a\n",
- " def get_b(self):\n",
- " return self.__b\n",
- " \n",
- "#Initializing the list\n",
- "sampArray=[[samp(1,2),samp(3,4)],\n",
- " [samp(5,6),samp(7,8)],\n",
- " [samp(9,10),samp(11,12)],\n",
- " [samp(13,14),samp(15,16)]]\n",
- "\n",
- "#Display\n",
- "for i in range(4):\n",
- " print sampArray[i][0].get_a(),' ',\n",
- " print sampArray[i][0].get_b()\n",
- " print sampArray[i][1].get_a(),' ',\n",
- " print sampArray[i][1].get_b()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2\n",
- "3 4\n",
- "5 6\n",
- "7 8\n",
- "9 10\n",
- "11 12\n",
- "13 14\n",
- "15 16\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.15, Page Number: 270<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "class P_example(Structure):\n",
- " __num=None\n",
- " def set_num(self,val):\n",
- " self.__num=val\n",
- " def show_num(self):\n",
- " print self.__num\n",
- "\n",
- "#Variable declaration\n",
- "ob=P_example() #Declare an object to the structure\n",
- "p=POINTER(P_example) #Declare a pointer to the structure\n",
- "\n",
- "ob.set_num(1) #access ob directly\n",
- "ob.show_num()\n",
- "\n",
- "p=ob #assign p the address of ob\n",
- "p.show_num() #access ob using pointer\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1\n",
- "1\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 11.16, Page Number: 271<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class P_example(Structure):\n",
- " __num=None\n",
- " def set_num(self,val):\n",
- " self.__num=val\n",
- " def show_num(self):\n",
- " print self.__num\n",
- " \n",
- "#Variable declaration\n",
- "ob=[P_example(),P_example()] #Declare an object to the structure\n",
- "p=POINTER(P_example) #Declare a pointer to the structure\n",
- "\n",
- "ob[0].set_num(10) #access objects directly\n",
- "ob[1].set_num(20)\n",
- "\n",
- "p=ob #obtain pointer to first element\n",
- "p[0].show_num() #access ob using pointer\n",
- "\n",
- "p[1].show_num()\n",
- "\n",
- "p[0].show_num()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n",
- "20\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_12(1).ipynb b/C++_from_the_Ground/Chapter_12(1).ipynb
deleted file mode 100755
index a29c9b4d..00000000
--- a/C++_from_the_Ground/Chapter_12(1).ipynb
+++ /dev/null
@@ -1,904 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:0b4a52abc3f3246965d1e59241352e867e78e448510ae25e91b7d38dc4dcc202"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 12: A Closer Look at Classes<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.1, Page Number: 274<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass:\n",
- " __a=None\n",
- " __b=None\n",
- " def __init__(self,i,j):\n",
- " self.__a=i\n",
- " self.__b=j\n",
- " def sum(self,x): #Friend function\n",
- " return sum1(x)\n",
- " \n",
- "def sum1(x): \n",
- " return x._myclass__a +x._myclass__b #accessing private members\n",
- "\n",
- "#Variable declaration\n",
- "n=myclass(3,4)\n",
- "\n",
- "#Result\n",
- "print n.sum(n)\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "7\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.2, Page Number: 275<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class c1:\n",
- " __status=None\n",
- " def set_status(self,state):\n",
- " self.__status=state\n",
- " \n",
- "class c2:\n",
- " __status=None\n",
- " def set_status(self,state):\n",
- " self.status=state\n",
- " \n",
- "#Friend function \n",
- "def idle(a,b):\n",
- " if a._c1__status or b._c2__status :\n",
- " return 0\n",
- " else:\n",
- " return 1\n",
- " \n",
- "#variable declarations\n",
- "def IDLE(): #Constants\n",
- " return 0\n",
- "def INUSE():\n",
- " return 1\n",
- "x=c1()\n",
- "y=c2()\n",
- "\n",
- "x.set_status(IDLE())\n",
- "y.set_status(IDLE())\n",
- "\n",
- "if idle(x,y):\n",
- " print \"Screen Can Be Used.\"\n",
- " \n",
- "x.set_status(INUSE())\n",
- "\n",
- "if idle(x,y):\n",
- " print \"Screen Can Be Used.\"\n",
- "else:\n",
- " print \"Pop-up In Use.\"\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Screen Can Be Used.\n",
- "Pop-up In Use.\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.3, Page Number: 277<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def IDLE(): \n",
- " return 0\n",
- "def INUSE():\n",
- " return 1\n",
- "\n",
- "class c1:\n",
- " __status=None\n",
- " def set_status(self,state):\n",
- " self.__status=state\n",
- " def idle(self,b): #now a member of c1\n",
- " if self.__status or b._c2__status :\n",
- " return 0\n",
- " else:\n",
- " return 1\n",
- " \n",
- "class c2:\n",
- " __status=None #IDLE if off INUSE if on screen\n",
- " def set_status(self,state):\n",
- " self.status=state\n",
- " \n",
- "#Variable declarations \n",
- "x=c1()\n",
- "y=c2()\n",
- "\n",
- "x.set_status(IDLE())\n",
- "y.set_status(IDLE())\n",
- "\n",
- "if idle(x,y):\n",
- " print \"Screen Can Be Used.\"\n",
- " \n",
- "x.set_status(INUSE())\n",
- "\n",
- "if idle(x,y):\n",
- " print \"Screen Can Be Used.\"\n",
- "else:\n",
- " print \"Pop-up In Use.\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Screen Can Be Used.\n",
- "Pop-up In Use.\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.4, Page Number: 278<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import time,string\n",
- "\n",
- "class timer:\n",
- " __seconds=None\n",
- " \n",
- " def __init__(self,t1,t2=None):\n",
- " if t2==None:\n",
- " if isinstance(t1,int): #seconds specified as an integer\n",
- " self.__seconds=t1\n",
- " else: #seconds specified as a string\n",
- " self.__seconds=string.atoi(t1)\n",
- " else: #time in minutes and seconds\n",
- " self.__seconds=t1*60+t2\n",
- " \n",
- " def run(self):\n",
- " t1=time.clock()\n",
- " while (time.clock()-t1)<self.__seconds:\n",
- " a=10\n",
- " print time.clock()-t1\n",
- " \n",
- " \n",
- "a=timer(10)\n",
- "b=timer(\"20\")\n",
- "c=timer(1,10)\n",
- "a.run() #count 10 seconds\n",
- "b.run() #count 20 seconds\n",
- "c.run() #count 1 minute,10 seconds\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10.0000009774\n",
- "20.0000009774"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n",
- "70.0000004887"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.5, Page Number: 280<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import time,string\n",
- "\n",
- "class timer:\n",
- " __seconds=None\n",
- " \n",
- " def __init__(self,t1,t2=None):\n",
- " if t2==None:\n",
- " if isinstance(t1,int): #seconds specified as an integer\n",
- " self.__seconds=t1\n",
- " else: #seconds specified as a string\n",
- " self.__seconds=string.atoi(t1)\n",
- " else: #time in minutes and seconds\n",
- " self.__seconds=t1*60+t2\n",
- " \n",
- " def run(self):\n",
- " t1=time.clock()\n",
- " while (time.clock()-t1)<self.__seconds:\n",
- " a=10\n",
- " print time.clock()-t1\n",
- " \n",
- "a=timer(10)\n",
- "a.run()\n",
- "\n",
- "print \"Enter number of seconds: \"\n",
- "str=\"20\"\n",
- "b=timer(str) #initialize at the run time\n",
- "c.run()\n",
- "\n",
- "print \"Enter minutes and seconds: \"\n",
- "min=1\n",
- "sec=10\n",
- "c=timer(min,sec) #initialize at the run time\n",
- "c.run()\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10.0000004887\n",
- "Enter number of seconds: \n",
- "70.0000009774"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n",
- "Enter minutes and seconds: \n",
- "70.0000009774"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.6, Page Number: 282<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " __a=None #private members\n",
- " __b=None\n",
- " def setab(self,i,j): #publc functons\n",
- " self.__a=i\n",
- " self.__b=j\n",
- " def showab(self):\n",
- " print \"a is \",self.__a\n",
- " print \"b is \",self.__b\n",
- "\n",
- "#Variable declaration\n",
- "ob1 = myclass()\n",
- "ob2 = myclass()\n",
- "\n",
- "#Intalizing\n",
- "ob1.setab(10,20)\n",
- "ob2.setab(0,0)\n",
- "\n",
- "print \"ob1 before assignment: \"\n",
- "ob1.showab()\n",
- "print \"ob2 before assignment: \"\n",
- "ob2.showab()\n",
- "\n",
- "ob2 = ob1 #assign ob1 to ob2\n",
- "\n",
- "#Result\n",
- "print \"ob1 after assignment: \"\n",
- "ob1.showab()\n",
- "print \"ob2 after assignment: \"\n",
- "ob2.showab()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ob1 before assignment: \n",
- "a is 10\n",
- "b is 20\n",
- "ob2 before assignment: \n",
- "a is 0\n",
- "b is 0\n",
- "ob1 after assignment: \n",
- "a is 10\n",
- "b is 20\n",
- "ob2 after assignment: \n",
- "a is 10\n",
- "b is 20\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.7, Page Number: 283<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from copy import deepcopy\n",
- " \n",
- "class OBJ:\n",
- " def set_i(self,x):\n",
- " self.__i=x\n",
- " def out_i(self):\n",
- " print self.__i,\n",
- " \n",
- "def f(x):\n",
- " x=deepcopy(x)\n",
- " x.out_i() #outputs 10\n",
- " x.set_i(100) #this affects only local copy\n",
- " x.out_i() #outputs 100\n",
- " \n",
- "#Variable declaration\n",
- "o=OBJ()\n",
- "o.set_i(10)\n",
- "f(o) \n",
- "o.out_i() #still outputs 10, value of i unchanged\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 100 10\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.8, Page Number: 284<h3> "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass: \n",
- " def __init__(self,i):\n",
- " self.__val=i\n",
- " print \"Constructing\"\n",
- " def __del__(self):\n",
- " print \"Destructing\"\n",
- " def getval(self):\n",
- " return self.__val\n",
- " \n",
- "def display(ob):\n",
- " print ob.getval()\n",
- "\n",
- "#Varable declaration\n",
- "a=myclass(10)\n",
- "\n",
- "display(a)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing\n",
- "Destructing\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.9, Page Number: 286<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "class myclass:\n",
- " def __init__(self,i):\n",
- " print \"Allocating p\"\n",
- " self.p=pointer(c_int(i))\n",
- " def __del__(self):\n",
- " print \"Freeing p\"\n",
- " def getval(self):\n",
- " return self.p[0]\n",
- " \n",
- "def display(ob):\n",
- " print ob.getval()\n",
- "\n",
- "#Variable declaration\n",
- "a=myclass(10)\n",
- "\n",
- "display(a)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Allocating p\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.10, Page Number: 287<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "from ctypes import *\n",
- "class myclass:\n",
- " def __init__(self,i):\n",
- " print \"Allocating p\"\n",
- " self.p=pointer(c_int(i))\n",
- " def __del__(self):\n",
- " print \"Freeing p\"\n",
- " def getval(self):\n",
- " return self.p[0]\n",
- " \n",
- "def display(ob):\n",
- " print ob[0].getval()\n",
- "\n",
- "#Variable declaration\n",
- "a=[]\n",
- "a.append(myclass(10))\n",
- "\n",
- "display(a)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Freeing p\n",
- "Allocating p\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.11, Page Number: 288<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class sample:\n",
- " __s=None\n",
- " def show(self):\n",
- " print self.__s\n",
- " def set(self,str):\n",
- " self.__s=str\n",
- "\n",
- "#Return an object of type sample\n",
- "def input():\n",
- " str=sample()\n",
- " instr = \"Hello\" #User input\n",
- " str.set(instr)\n",
- " return str\n",
- "\n",
- "#Variable declaration\n",
- "ob=sample()\n",
- "\n",
- "#assign returned object to ob\n",
- "ob=input()\n",
- "\n",
- "#Result\n",
- "ob.show()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.12, Page Number: 289<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class sample:\n",
- " __s=None\n",
- " def __init__(self):\n",
- " self.__s=0\n",
- " def __del__(self): \n",
- " print \"Freeing p\"\n",
- " def show(self):\n",
- " print self.__s\n",
- " def set(self,str):\n",
- " self.__s=str\n",
- " \n",
- "#This function takes one object parameter\n",
- "def input():\n",
- " str=sample()\n",
- " instr=\"Hello\" #User input\n",
- " str.set(instr)\n",
- " return str\n",
- "\n",
- "#Variable declaration\n",
- "ob=sample()\n",
- "\n",
- "#assign returned object to ob\n",
- "ob=input()\n",
- "\n",
- "#Result\n",
- "ob.show()\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Freeing p\n",
- "Freeing p\n",
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.13, Page Number: 292<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass:\n",
- " __p=None\n",
- " def __init__(self,i):\n",
- " if isinstance(i,int):\n",
- " print \"Allocating p\"\n",
- " self.__p=i\n",
- " else:\n",
- " print \"Copy constructor called\"\n",
- " self.__p=i.getval()\n",
- " def __del__(self): \n",
- " print \"Freeing p\"\n",
- " def getval(self):\n",
- " return self.__p\n",
- " \n",
- "#This function takes one object parameter\n",
- "def display(ob):\n",
- " print ob.getval()\n",
- "\n",
- "#Variable declaration\n",
- "ob=myclass(10)\n",
- "\n",
- "#Result\n",
- "display(ob)\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Allocating p\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.14, Page Number: 294<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "class myclass:\n",
- " __p=None\n",
- " def __init__(self,i):\n",
- " if isinstance(i,int):\n",
- " print \"Allocating p\"\n",
- " self.__p=i\n",
- " else:\n",
- " print \"Copy constructor called\"\n",
- " self.__p=i.getval()\n",
- " def __del__(self): \n",
- " print \"Freeing p\"\n",
- " def getval(self):\n",
- " return self.__p\n",
- " \n",
- "\n",
- "#Variable declaration\n",
- "a=myclass(10) #calls normal constructor\n",
- "b=myclass(a) #calls copy constructor\n",
- "\n",
- "\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Allocating p\n",
- "Copy constructor called\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.15, Page Number: 295<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass:\n",
- " def __init__(self,i=0):\n",
- " if isinstance(i,int):\n",
- " print \"Normal constructor\"\n",
- " else:\n",
- " print \"Copy constructor\"\n",
- "\n",
- "\n",
- "#Variable declaration\n",
- "a=myclass() #calls normal constructor\n",
- "\n",
- "f=myclass()\n",
- "a=myclass(f) #Invoke copyconstructor\n",
- "\n",
- "\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Normal constructor\n",
- "Normal constructor\n",
- "Copy constructor\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 12.16, Page Number: 297<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class c1:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " def load_i(self,val):\n",
- " self.__i=val\n",
- " def get_i(self):\n",
- " return self.__i\n",
- " \n",
- "#Variable declaration \n",
- "o=c1()\n",
- "\n",
- "o.load_i(100)\n",
- "\n",
- "#Result\n",
- "print o.get_i()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_13(1).ipynb b/C++_from_the_Ground/Chapter_13(1).ipynb
deleted file mode 100755
index 6d12a5a7..00000000
--- a/C++_from_the_Ground/Chapter_13(1).ipynb
+++ /dev/null
@@ -1,883 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:be0df45a07fa8844875025463a4211b5faab9834d4e1dd155b475b36ae6ea27e"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 13: Operator Overloading<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.1, Page Number: 300<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Overload +\n",
- " def __add__(self,op2):\n",
- " temp=three_d()\n",
- " temp.x=self.x + op2.x #These are integer additions\n",
- " temp.y=self.y + op2.y #and the + retains its original\n",
- " temp.z=self.z + op2.z #meaning relative to them.\n",
- " return temp\n",
- " #Overload assignment\n",
- " def __assign__(self,op2):\n",
- " self.x=op2.x #These are integer assignments\n",
- " self.y=op2.y #and the = retains its original \n",
- " self.z=op2.z #meaning relative to them\n",
- " return self\n",
- " #Show x,y,z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- " \n",
- "#Variable declaration\n",
- "a=three_d(1,2,3)\n",
- "b=three_d(10,10,10)\n",
- "c=three_d()\n",
- "\n",
- "a.show()\n",
- "b.show()\n",
- "\n",
- "#add a and b together\n",
- "c=a+b\n",
- "c.show()\n",
- "\n",
- "#add a,b and c together\n",
- "c=a+b+c\n",
- "c.show()\n",
- "\n",
- "#demonstrate multiple assignment\n",
- "c=b=a\n",
- "c.show()\n",
- "b.show()\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 , 2 , 3\n",
- "10 , 10 , 10\n",
- "11 , 12 , 13\n",
- "22 , 24 , 26\n",
- "1 , 2 , 3\n",
- "1 , 2 , 3\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.2, Page Number: 303<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Overload +\n",
- " def __add__(self,op2):\n",
- " temp=three_d()\n",
- " temp.x=self.x + op2.x #These are integer additions\n",
- " temp.y=self.y + op2.y #and the + retains its original\n",
- " temp.z=self.z + op2.z #meaning relative to them.\n",
- " return temp\n",
- " #Overload assignment\n",
- " def __assign__(self,op2):\n",
- " self.x=op2.x #These are integer assignments\n",
- " self.y=op2.y #and the = retains its original \n",
- " self.z=op2.z #meaning relative to them\n",
- " return self\n",
- " #Overload the increment operator\n",
- " def __iadd__(self,op2):\n",
- " self.x+=op2\n",
- " self.y+=op2\n",
- " self.z+=op2\n",
- " return self\n",
- " #Show x,y,z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- " \n",
- "a=three_d(1,2,3)\n",
- "b=three_d(10,10,10)\n",
- "c=three_d()\n",
- "\n",
- "a.show()\n",
- "b.show()\n",
- "\n",
- "#add a and b together\n",
- "c=a+b\n",
- "c.show()\n",
- "\n",
- "#add a,b and c together\n",
- "c=a+b+c\n",
- "c.show()\n",
- "\n",
- "#demonstrate multiple assignment\n",
- "c=b=a\n",
- "c.show()\n",
- "b.show()\n",
- " \n",
- "#Increment c\n",
- "c+=1\n",
- "c.show()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 , 2 , 3\n",
- "10 , 10 , 10\n",
- "11 , 12 , 13\n",
- "22 , 24 , 26\n",
- "1 , 2 , 3\n",
- "1 , 2 , 3\n",
- "2 , 3 , 4\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.3, Page Number: 306<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Overload +\n",
- " def __add__(self,op2):\n",
- " temp=three_d()\n",
- " temp.x=self.x + op2.x #These are integer additions\n",
- " temp.y=self.y + op2.y #and the + retains its original\n",
- " temp.z=self.z + op2.z #meaning relative to them.\n",
- " return temp\n",
- " #Overload assignment\n",
- " def __assign__(self,op2):\n",
- " self.x=op2.x #These are integer assignments\n",
- " self.y=op2.y #and the = retains its original \n",
- " self.z=op2.z #meaning relative to them\n",
- " return self\n",
- " #Overload the increment operator\n",
- " def __iadd__(self,op2):\n",
- " self.x+=op2\n",
- " self.y+=op2\n",
- " self.z+=op2\n",
- " return self\n",
- " #Show x,y,z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- " \n",
- "a=three_d(1,2,3)\n",
- "b=three_d(10,10,10)\n",
- "c=three_d()\n",
- "\n",
- "a.show()\n",
- "b.show()\n",
- "\n",
- "#add a and b together\n",
- "c=a+b\n",
- "c.show()\n",
- "\n",
- "#add a,b and c together\n",
- "c=a+b+c\n",
- "c.show()\n",
- "\n",
- "#demonstrate multiple assignment\n",
- "c=b=a\n",
- "c.show()\n",
- "b.show()\n",
- " \n",
- "#Increment c (prefix)\n",
- "c+=1\n",
- "c.show()\n",
- "\n",
- "#Increment c (postfix)\n",
- "c+=1\n",
- "c.show()\n",
- "\n",
- "#Implementing prefix\n",
- "c+=1\n",
- "a=c\n",
- "a.show()\n",
- "c.show()\n",
- "\n",
- "#Implementing postfix\n",
- "a=c\n",
- "a.show()\n",
- "c+=1\n",
- "c.show()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 , 2 , 3\n",
- "10 , 10 , 10\n",
- "11 , 12 , 13\n",
- "22 , 24 , 26\n",
- "1 , 2 , 3\n",
- "1 , 2 , 3\n",
- "2 , 3 , 4\n",
- "3 , 4 , 5\n",
- "4 , 5 , 6\n",
- "4 , 5 , 6\n",
- "4 , 5 , 6\n",
- "5 , 6 , 7\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.4, Page Number: 310<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Overload +\n",
- " def __add__(self,op2):\n",
- " return add(self,op2)\n",
- " #Overload assignment\n",
- " def __assign__(self,op2):\n",
- " self.x=op2.x #These are integer assignments\n",
- " self.y=op2.y #and the = retains its original \n",
- " self.z=op2.z #meaning relative to them\n",
- " return self\n",
- " #Show x,y,z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- " \n",
- "#friending the funcion\n",
- "def add(op1,op2):\n",
- " temp=three_d()\n",
- " temp.x=op1.x + op2.x #These are integer additions\n",
- " temp.y=op1.y + op2.y #and the + retains its original\n",
- " temp.z=op1.z + op2.z #meaning relative to them.\n",
- " return temp\n",
- "\n",
- "a=three_d(1,2,3)\n",
- "b=three_d(10,10,10)\n",
- "c=three_d()\n",
- "\n",
- "a.show()\n",
- "b.show()\n",
- "\n",
- "#add a and b together\n",
- "c=a+b\n",
- "c.show()\n",
- "\n",
- "#add a,b and c together\n",
- "c=a+b+c\n",
- "c.show()\n",
- "\n",
- "#demonstrate multiple assignment\n",
- "c=b=a\n",
- "c.show()\n",
- "b.show()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 , 2 , 3\n",
- "10 , 10 , 10\n",
- "11 , 12 , 13\n",
- "22 , 24 , 26\n",
- "1 , 2 , 3\n",
- "1 , 2 , 3\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.5, Page Number: 311<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class CL:\n",
- " def __init__(self):\n",
- " self.count=0\n",
- " def __assign__(self,obj):\n",
- " self.count=obj.count\n",
- " return self\n",
- " def __add__(self,i): \n",
- " return add(self,i)\n",
- " def __radd__(self,i):\n",
- " return radd(self,i)\n",
- "\n",
- "#This handles ob + int\n",
- "def add(ob,i):\n",
- " temp=CL()\n",
- " temp.count=ob.count+i\n",
- " return temp\n",
- " \n",
- "#This handles int + ob \n",
- "def radd(ob,i):\n",
- " temp=CL()\n",
- " temp.count=i+ob.count\n",
- " return temp\n",
- "\n",
- "#Variable declaration\n",
- "o=CL()\n",
- "o.count = 10\n",
- "\n",
- "#Result\n",
- "print o.count, #outputs 10\n",
- "o=10+o\n",
- "print o.count, #outputs 20\n",
- "o=o+12\n",
- "print o.count #outputs 32\n",
- "\n",
- "\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 32\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.6, Page Number: 314<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Overload +\n",
- " def __add__(self,op2):\n",
- " return add(self,op2)\n",
- " #Overload assignment\n",
- " def __assign__(self,op2):\n",
- " self.x=op2.x #These are integer assignments\n",
- " self.y=op2.y #and the = retains its original \n",
- " self.z=op2.z #meaning relative to them\n",
- " return self\n",
- " #Overload the increment operator\n",
- " def __iadd__(self,op2):\n",
- " return iadd(self,op2)\n",
- " #Show x,y,z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- "\n",
- "#friending the funcion\n",
- "def add(op1,op2):\n",
- " temp=three_d()\n",
- " temp.x=op1.x + op2.x #These are integer additions\n",
- " temp.y=op1.y + op2.y #and the + retains its original\n",
- " temp.z=op1.z + op2.z #meaning relative to them.\n",
- " return temp\n",
- "def iadd(op1,op2):\n",
- " op1.x+=op2\n",
- " op1.y+=op2\n",
- " op1.z+=op2\n",
- " return op1\n",
- " \n",
- "a=three_d(1,2,3)\n",
- "b=three_d(10,10,10)\n",
- "c=three_d()\n",
- "\n",
- "a.show()\n",
- "b.show()\n",
- "\n",
- "#add a and b together\n",
- "c=a+b\n",
- "c.show()\n",
- "\n",
- "#add a,b and c together\n",
- "c=a+b+c\n",
- "c.show()\n",
- "\n",
- "#demonstrate multiple assignment\n",
- "c=b=a\n",
- "c.show()\n",
- "b.show()\n",
- " \n",
- "#Increment c (prefix)\n",
- "c+=1\n",
- "c.show()\n",
- "\n",
- "#Increment c (postfix)\n",
- "c+=1\n",
- "c.show()\n",
- "\n",
- "#Implementing prefix\n",
- "c+=1\n",
- "a=c\n",
- "a.show()\n",
- "c.show()\n",
- "\n",
- "#Implementing postfix\n",
- "a=c\n",
- "a.show()\n",
- "c+=1\n",
- "c.show()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 , 2 , 3\n",
- "10 , 10 , 10\n",
- "11 , 12 , 13\n",
- "22 , 24 , 26\n",
- "1 , 2 , 3\n",
- "1 , 2 , 3\n",
- "2 , 3 , 4\n",
- "3 , 4 , 5\n",
- "4 , 5 , 6\n",
- "4 , 5 , 6\n",
- "4 , 5 , 6\n",
- "5 , 6 , 7\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.7, Page Number: 318<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class sample:\n",
- " def __init__(self,ob=0):\n",
- " if isinstance(ob,int):\n",
- " #Normal constructor\n",
- " self.__s=\"\"\n",
- " return\n",
- " else:\n",
- " #Copy constructor\n",
- " self.__s=obj._sample__s\n",
- " return\n",
- " def __del__(self):\n",
- " print \"Freeing s\"\n",
- " def show(self):\n",
- " print self.__s\n",
- " def set(self,str):\n",
- " self.__s=str\n",
- " def __assign__(self,ob): #Overload assignment\n",
- " self.s=ob._sample__s\n",
- " return self\n",
- " \n",
- "def input():\n",
- " str=sample()\n",
- " instr=\"Hello\" #User input\n",
- " str.set(instr)\n",
- " return str\n",
- "\n",
- "ob=sample()\n",
- "\n",
- "#assign returned object to ob\n",
- "ob=input()\n",
- "\n",
- "#Result\n",
- "ob.show()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Freeing s\n",
- "Freeing s\n",
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.8, Page Number: 321<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class atype:\n",
- " def __init__(self):\n",
- " self.__a=[]\n",
- " for i in range(SIZE):\n",
- " self.__a.append(i)\n",
- " def a(self,i):\n",
- " return self.__a[i]\n",
- " \n",
- "#Variable declaration\n",
- "SIZE=3\n",
- "ob=atype()\n",
- "\n",
- "#Result\n",
- "print ob.a(2),\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.9, Page Number: 322<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class atype:\n",
- " def __init__(self):\n",
- " self.__a=[]\n",
- " for i in range(SIZE):\n",
- " self.__a.append(i)\n",
- " def a(self,i,j=None):\n",
- " if j==None:\n",
- " return self.__a[i]\n",
- " else:\n",
- " self.__a[i]=j\n",
- " \n",
- "#Variable declaration\n",
- "SIZE=3 \n",
- "ob=atype()\n",
- "\n",
- "print ob.a(2), #displays 2\n",
- "\n",
- "ob.a(2,25)\n",
- "\n",
- "print ob.a(2) #now displays 25"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2 25\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.10, Page Number: 323<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class atype:\n",
- " def __init__(self):\n",
- " self.__a=[]\n",
- " for i in range(SIZE):\n",
- " self.__a.append(i)\n",
- " def a(self,i,j=None):\n",
- " if (i<0 or i>SIZE-1):\n",
- " print \"Index value of\",\n",
- " print i,\"is out of bounds.\"\n",
- " return\n",
- " if j==None:\n",
- " return self.__a[i]\n",
- " else:\n",
- " self.__a[i]=j\n",
- " \n",
- "#Variable declaration\n",
- "SIZE=3 \n",
- "ob=atype()\n",
- "\n",
- "print ob.a(2), #displays 2\n",
- "\n",
- "ob.a(2,25)\n",
- "\n",
- "print ob.a(2) #now displays 25\n",
- "\n",
- "ob.a(44,3) #generates runtime error, 3 out of bounds"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2 25\n",
- "Index value of 44 is out of bounds.\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.11, Page Number: 324<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,i=None,j=None,k=None):\n",
- " if i==None:\n",
- " self.x=self.y=self.z=0 #3-D coordinates\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " #Show X,Y,Z coordinates\n",
- " def show(self):\n",
- " print self.x,\",\",self.y,\",\",self.z\n",
- " #Overload ()\n",
- " def a(self,a,b,c):\n",
- " temp = three_d()\n",
- " temp.x=self.x+a\n",
- " temp.y=self.y+b\n",
- " temp.z=self.z+c\n",
- " return temp\n",
- " \n",
- "#Variable declaration\n",
- "ob1=three_d(1,2,3)\n",
- "\n",
- "ob2=ob1.a(10,11,12) #invoke operator ()\n",
- "\n",
- "#Result\n",
- "print \"ob1: \",\n",
- "ob1.show()\n",
- "print \"ob2: \",\n",
- "ob2.show()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ob1: 1 , 2 , 3\n",
- "ob2: 11 , 13 , 15\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 13.12, Page Number: 326<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class str_type:\n",
- " def __init__(self,str=\"\"):\n",
- " self.__string=str\n",
- " #String concatenation\n",
- " def __add__(self,str):\n",
- " temp=str_type()\n",
- " if isinstance(str,str_type):\n",
- " temp.__string=self.__string+str.__string\n",
- " else:\n",
- " temp.__string=self.__string+str\n",
- " return temp\n",
- " #String copy\n",
- " def __assign__(self,str):\n",
- " if isinstance(str,str_type):\n",
- " self.__string=str.__string\n",
- " else:\n",
- " self.__string=str\n",
- " return self\n",
- " def show_str(self):\n",
- " print self.__string\n",
- " \n",
- "a=str_type(\"Hello \")\n",
- "b=str_type(\"There\")\n",
- "c=a+b\n",
- "c.show_str()\n",
- "\n",
- "a=str_type(\"to program in because\")\n",
- "a.show_str()\n",
- "\n",
- "b=c=str_type(\"C++ is fun\")\n",
- "\n",
- "c=c+\" \"+a+\" \"+b\n",
- "c.show_str()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Hello There\n",
- "to program in because\n",
- "C++ is fun to program in because C++ is fun\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_14(1).ipynb b/C++_from_the_Ground/Chapter_14(1).ipynb
deleted file mode 100755
index 2f8447ba..00000000
--- a/C++_from_the_Ground/Chapter_14(1).ipynb
+++ /dev/null
@@ -1,924 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:d3cc78f10810f320519cd1c8becefb4790578385b5c2b528dc88273651f18c12"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 14: Inheritance<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.1, Page Number: 333<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class road_vehicle:\n",
- " def __init__(self):\n",
- " self.__wheels=None\n",
- " self.__passengers=None\n",
- " def set_wheels(self,num):\n",
- " self.__wheels=num\n",
- " def get_wheels(self):\n",
- " return self.__wheels\n",
- " def set_pass(self,num):\n",
- " self.__passengers=num\n",
- " def get_pass(self):\n",
- " return self.__passengers\n",
- "\n",
- "#Define a truck\n",
- "class truck(road_vehicle):\n",
- " def __init__(self):\n",
- " self.__cargo=None\n",
- " def set_cargo(self,size):\n",
- " self.__cargo=size\n",
- " def get_cargo(self):\n",
- " return self.__cargo\n",
- " def show(self):\n",
- " print \"wheels: \",self.get_wheels()\n",
- " print \"passengers: \",self.get_pass()\n",
- " print \"cargo capacity in cubic feet: \",self.__cargo\n",
- " \n",
- "#Define an enum type\n",
- "(car,van,wagon)=(1,2,3)\n",
- "type=[\"car\",\"van\",\"wagon\"]\n",
- " \n",
- "#Define an automobile\n",
- "class automobile(road_vehicle):\n",
- " def __init__(self):\n",
- " self.car_type=None\n",
- " def set_type(self,t):\n",
- " self.car_type=t\n",
- " def get_type(self):\n",
- " return self.car_type\n",
- " def show(self):\n",
- " print \"wheels: \",self.get_wheels()\n",
- " print \"passengers: \",self.get_pass()\n",
- " print \"type: \",\n",
- " if self.get_type()==1:\n",
- " print \"car\"\n",
- " elif self.get_type()==2:\n",
- " print \"van\"\n",
- " elif self.get_type()==3:\n",
- " print \"wagon\"\n",
- " \n",
- "#Variable declaration\n",
- "t1=truck()\n",
- "t2=truck()\n",
- "c=automobile()\n",
- "\n",
- "t1.set_wheels(18)\n",
- "t1.set_pass(2)\n",
- "t1.set_cargo(3200)\n",
- "\n",
- "t2.set_wheels(6)\n",
- "t2.set_pass(3)\n",
- "t2.set_cargo(1200)\n",
- "\n",
- "t1.show()\n",
- "t2.show()\n",
- "\n",
- "c.set_wheels(4)\n",
- "c.set_pass(6)\n",
- "c.set_type(van)\n",
- "\n",
- "c.show() \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "wheels: 18\n",
- "passengers: 2\n",
- "cargo capacity in cubic feet: 3200\n",
- "wheels: 6\n",
- "passengers: 3\n",
- "cargo capacity in cubic feet: 1200\n",
- "wheels: 4\n",
- "passengers: 6\n",
- "type: van\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.2, Page Number: 335<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.__i=self.__j=None\n",
- " def set(self,a,b):\n",
- " self.__i=a\n",
- " self.__j=b\n",
- " def show(self):\n",
- " print self.__i,self.__j\n",
- " \n",
- "class derived(base):\n",
- " def __init__(self,x):\n",
- " self.__k=x\n",
- " def showk(self):\n",
- " print self.__k\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived(3)\n",
- "\n",
- "ob.set(1,2) #access member of base\n",
- "ob.show() #access member of base\n",
- "\n",
- "ob.showk() #uses member of derived class\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2\n",
- "3\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.3, Page Number: 337<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.__i=self.__j=None #These act as protected members\n",
- " def set(self,a,b):\n",
- " self.__i=a\n",
- " self.__j=b\n",
- " def show(self):\n",
- " print self.__i,self.__j\n",
- " \n",
- "class derived(base):\n",
- " def __init__(self):\n",
- " self.__k=None\n",
- " def setk(self):\n",
- " self.__k=self._base__i*self._base__j #accessing private variables in derived class\n",
- " def showk(self):\n",
- " print self.__k\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived()\n",
- "\n",
- "ob.set(2,3) #OK, known to be derived\n",
- "ob.show() #OK, known to be derived\n",
- "\n",
- "ob.setk()\n",
- "ob.showk() #uses member of derived class\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2 3\n",
- "6\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.4, Page Number: 338<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " self.__j=None\n",
- " def set(self,a,b):\n",
- " self.__i=a\n",
- " self.__j=b\n",
- " def show(self):\n",
- " print self.__i,self.__j\n",
- " \n",
- "class derived1(base):\n",
- " def __init__(self):\n",
- " self.__k=None\n",
- " def setk(self):\n",
- " self.__k=self._base__i*self._base__j\n",
- " def showk(self):\n",
- " print self.__k\n",
- "\n",
- "class derived2(derived1):\n",
- " def __init__(self):\n",
- " self.__m=None\n",
- " def setm(self):\n",
- " self.__m=self._base__i-self._base__j\n",
- " def showm(self):\n",
- " print self.__m\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "ob1 = derived1()\n",
- "ob2 = derived2()\n",
- "\n",
- "ob1.set(2,3) #access member of base\n",
- "ob1.show() #access member of base\n",
- "ob1.setk() #uses member of derived1 class\n",
- "ob1.showk() #uses member of derived1 class\n",
- "\n",
- "ob2.set(3,4) #access member of base\n",
- "ob2.show() #access member of base\n",
- "ob2.setk() #access member of derived1 class\n",
- "ob2.setm() #access member of derived2 class\n",
- "ob2.showk() #uses member of derived1 class\n",
- "ob2.showm() #uses member of derived1 class\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2 3\n",
- "6\n",
- "3 4\n",
- "12\n",
- "-1\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.5, Page Number: 341<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " self._j=None\n",
- " self.k=None\n",
- " def seti(self,a):\n",
- " self.__i=a\n",
- " def geti(self):\n",
- " return i\n",
- " \n",
- "class derived(base):\n",
- " def setj(self,a):\n",
- " self._j=a\n",
- " def setk(self,a):\n",
- " self.k=a\n",
- " def getj(self):\n",
- " return self._j\n",
- " def getk(self):\n",
- " return self.k\n",
- " \n",
- "#Variable declaration \n",
- "ob=derived()\n",
- "\n",
- "ob.setk(10)\n",
- "print ob.getk(),\n",
- "ob.setj(12)\n",
- "print ob.getj()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 12\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.6, Page Number: 342<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base1:\n",
- " def __init__(self):\n",
- " self.x=None\n",
- " def showx(self):\n",
- " print self.x\n",
- " \n",
- "class base2:\n",
- " def __init__(self):\n",
- " self.y=None\n",
- " def showy(self):\n",
- " print self.y\n",
- " \n",
- "class derived(base1,base2):\n",
- " def set(self,i,j):\n",
- " self.x=i\n",
- " self.y=j\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived()\n",
- "\n",
- "ob.set(10,20) #provided by derived\n",
- "ob.showx() #from base1\n",
- "ob.showy() #from base2\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n",
- "20\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.7, Page Number: 343<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " print \"Constructing base\"\n",
- " def __del__(self):\n",
- " print \"Destructing base\"\n",
- "\n",
- "class derived(base):\n",
- " def __init__(self):\n",
- " base.__init__(self)\n",
- " print \"Constructing derived\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived\"\n",
- " for b in self.__class__.__bases__:\n",
- " b.__del__(self)\n",
- "\n",
- "#Variable declaration\n",
- "ob=derived()\n",
- "\n",
- "#Does nothing but construct and destruct ob"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing base\n",
- "Constructing derived\n",
- "Destructing derived\n",
- "Destructing base\n"
- ]
- }
- ],
- "prompt_number": 19
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.8, Page Number: 344<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " print \"Constructing base\"\n",
- " def __del__(self):\n",
- " print \"Destructing base\"\n",
- "\n",
- "class derived1(base):\n",
- " def __init__(self):\n",
- " base.__init__(self)\n",
- " print \"Constructing derived1\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived1\"\n",
- " super(derived1,self).__del__(self)\n",
- "\n",
- "class derived2(derived1):\n",
- " def __init__(self):\n",
- " derived1.__init__(self)\n",
- " print \"Constructing derived2\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived2\"\n",
- " super(self.__class__,self).__del__(self)\n",
- " \n",
- "#Variable declaration\n",
- "ob=derived2()\n",
- "\n",
- "#Does nothing but construct and destruct ob"
- ],
- "language": "python",
- "metadata": {},
- "outputs": []
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.9, Page Number: 345<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base1:\n",
- " def __init__(self):\n",
- " print \"Constructing base1\"\n",
- " def __del__(self):\n",
- " print \"Destructing base1\"\n",
- " \n",
- "class base2:\n",
- " def __init__(self):\n",
- " print \"Constructing base2\"\n",
- " def __del__(self):\n",
- " print \"Destructing base2\"\n",
- " \n",
- "class derived(base1,base2):\n",
- " def __init__(self):\n",
- " for b in self.__class__.__bases__:\n",
- " b.__init__(self)\n",
- " print \"Constructing derived\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived\"\n",
- " for b in self.__class__.__bases__:\n",
- " b.__del__(self)\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing base1\n",
- "Constructing base2\n",
- "Constructing derived\n",
- "Destructing derived\n",
- "Destructing base1\n",
- "Destructing base2\n"
- ]
- }
- ],
- "prompt_number": 21
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.10, Page Number: 347<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self,x):\n",
- " self._i=x\n",
- " print \"Constructing base\"\n",
- " def __del__(self):\n",
- " print \"Destructing base\"\n",
- "\n",
- "class derived(base):\n",
- " def __init__(self,x,y):\n",
- " base.__init__(self,y)\n",
- " self.__j=x\n",
- " print \"Constructing derived\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived\"\n",
- " for b in self.__class__.__bases__:\n",
- " b.__del__(self)\n",
- " def show(self):\n",
- " print self._i,self.__j\n",
- "\n",
- "#Variable declaration\n",
- "ob=derived(3,4)\n",
- "\n",
- "#Result\n",
- "ob.show() #shows 4 3"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing base\n",
- "Constructing derived\n",
- "Destructing derived\n",
- "Destructing base\n",
- "4 3\n"
- ]
- }
- ],
- "prompt_number": 23
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.11, Page Number: 348<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base1:\n",
- " def __init__(self,x):\n",
- " self._i=x\n",
- " print \"Constructing base1\"\n",
- " def __del__(self):\n",
- " print \"Destructing base1\"\n",
- " \n",
- "class base2:\n",
- " def __init__(self,x):\n",
- " self._k=x\n",
- " print \"Constructing base2\"\n",
- " def __del__(self):\n",
- " print \"Destructing base2\"\n",
- " \n",
- "class derived(base1,base2):\n",
- " def __init__(self,x,y,z):\n",
- " self.__j=x\n",
- " i=0\n",
- " for b in self.__class__.__bases__:\n",
- " if i==0:\n",
- " b.__init__(self,y)\n",
- " else :\n",
- " b.__init__(self,z)\n",
- " i+=1\n",
- " print \"Constructing derived\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived\"\n",
- " for b in self.__class__.__bases__:\n",
- " b.__del__(self)\n",
- " def show(self):\n",
- " print self._i,self.__j,self._k\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived(3,4,5)\n",
- "\n",
- "#Result\n",
- "ob.show()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing base1\n",
- "Constructing base2\n",
- "Constructing derived\n",
- "Destructing derived\n",
- "Destructing base1\n",
- "Destructing base2\n",
- "4 3 5\n"
- ]
- }
- ],
- "prompt_number": 25
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.12, Page Number: 348<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base1:\n",
- " def __init__(self,x):\n",
- " self._i=x\n",
- " print \"Constructing base1\"\n",
- " def __del__(self):\n",
- " print \"Destructing base1\"\n",
- " \n",
- "class base2:\n",
- " def __init__(self,x):\n",
- " self._k=x\n",
- " print \"Constructing base2\"\n",
- " def __del__(self):\n",
- " print \"Destructing base2\"\n",
- " \n",
- "class derived(base1,base2):\n",
- " def __init__(self,x,y):\n",
- " i=0\n",
- " for b in self.__class__.__bases__:\n",
- " if i==0:\n",
- " b.__init__(self,x)\n",
- " else :\n",
- " b.__init__(self,y)\n",
- " i+=1\n",
- " print \"Constructing derived\"\n",
- " def __del__(self):\n",
- " print \"Destructing derived\"\n",
- " for b in self.__class__.__bases__:\n",
- " b.__del__(self)\n",
- " def show(self):\n",
- " print self._i,self._k\n",
- " \n",
- "#Variable declaration\n",
- "ob = derived(3,4)\n",
- "\n",
- "#Result\n",
- "ob.show()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Constructing base1\n",
- "Constructing base2\n",
- "Constructing derived\n",
- "Destructing derived\n",
- "Destructing base1\n",
- "Destructing base2\n",
- "3 4\n"
- ]
- }
- ],
- "prompt_number": 26
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.13, Page Number: 351<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.__i=None\n",
- " self.j=self.k=None\n",
- " def seti(self,x):\n",
- " self.__i=x\n",
- " def geti(self):\n",
- " return self.__i\n",
- "\n",
- "class derived(base):\n",
- " def __init__(self):\n",
- " self.a=None\n",
- "\n",
- "\n",
- "#Variable declaration\n",
- "ob=derived()\n",
- "\n",
- "ob._base__i=10 #Accessing private members of base class\n",
- "ob.j=20 #legal because j and k are public variable in base\n",
- "ob.k=30\n",
- "\n",
- "ob.a=40 #legal because a is public in derived class\n",
- "ob.seti(10)\n",
- "\n",
- "#Result\n",
- "print ob.geti(),ob.j,ob.a"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 40\n"
- ]
- }
- ],
- "prompt_number": 28
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.14, Page Number: 354<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.i=None\n",
- "\n",
- "#derived1 inherits base\n",
- "class derived1(base):\n",
- " def __init__(self):\n",
- " self.__j=None\n",
- " \n",
- "#derived2 inherits base\n",
- "class derived2(base):\n",
- " def __init__(self):\n",
- " self.__k=None\n",
- "\n",
- "#derived3 inherits from both derived1 and derived2\n",
- "class derived3(derived1,derived2):\n",
- " def __init__(self):\n",
- " self.__sum=None\n",
- " \n",
- "#Variable declaration\n",
- "ob=derived3()\n",
- "\n",
- "ob.i=10\n",
- "ob.j=20\n",
- "ob.k=30\n",
- "\n",
- "ob.sum=ob.i+ob.j+ob.k\n",
- "\n",
- "#Result\n",
- "print ob.i,ob.j,ob.k,ob.sum"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 30 60\n"
- ]
- }
- ],
- "prompt_number": 29
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 14.15, Page Number: 355<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class base:\n",
- " def __init__(self):\n",
- " self.i=None\n",
- "\n",
- "#derived1 inherits base\n",
- "class derived1(base):\n",
- " def __init__(self):\n",
- " self.__j=None\n",
- " \n",
- "#derived2 inherits base\n",
- "class derived2(base):\n",
- " def __init__(self):\n",
- " self.__k=None\n",
- "\n",
- "#derived3 inherits from both derived1 and derived2\n",
- "class derived3(derived1,derived2):\n",
- " def __init__(self):\n",
- " self.__sum=None\n",
- " \n",
- "#Variable declaration\n",
- "ob=derived3()\n",
- "\n",
- "ob.i=10\n",
- "ob.j=20\n",
- "ob.k=30\n",
- "\n",
- "ob.sum=ob.i+ob.j+ob.k\n",
- "\n",
- "#Result\n",
- "print ob.i,ob.j,ob.k,ob.sum"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 30 60\n"
- ]
- }
- ],
- "prompt_number": 30
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_15(1).ipynb b/C++_from_the_Ground/Chapter_15(1).ipynb
deleted file mode 100755
index 211b1c7d..00000000
--- a/C++_from_the_Ground/Chapter_15(1).ipynb
+++ /dev/null
@@ -1,427 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:1198072630a182533bf651767f275df9ee5758e0d781322254bb408a8b4cffaa"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 15: Virtual Functions and Polymorphism<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.1, Page Number: 358<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "class B_class:\n",
- " def __init__(self):\n",
- " self.author=None\n",
- " def put_author(self,s):\n",
- " self.author=s\n",
- " def show_author(self):\n",
- " print self.author\n",
- " \n",
- "class D_class(B_class):\n",
- " def __init__(self):\n",
- " self.title=None\n",
- " def put_title(self,num):\n",
- " self.title=num\n",
- " def show_title(self):\n",
- " print \"Title:\",self.title\n",
- " \n",
- "#Variable declaration\n",
- "p=[B_class()] #acts as a pointer to B_class type\n",
- "B_ob=B_class()\n",
- "\n",
- "dp=[D_class()] #acts as a pointer to D_class type\n",
- "D_ob=D_class()\n",
- "\n",
- "p[0]=B_ob #assigning p to object of base\n",
- "\n",
- "\n",
- "#Access B_class via pointer\n",
- "p[0].put_author(\"Tom Clancy\")\n",
- "\n",
- "#Access D_class via base pointer\n",
- "p[0]=D_ob\n",
- "p[0].put_author(\"William Shakespeare\")\n",
- "\n",
- "#Show that each author went into proper object\n",
- "B_ob.show_author()\n",
- "D_ob.show_author()\n",
- "print \"\\n\"\n",
- "\n",
- "#Since put_title() and show_title() are not part of the base class, \n",
- "#they are not accessible via the base pointer p and must be accessed \n",
- "#either directly, or, as shown here, through a pointer to the \n",
- "#derived type\n",
- "dp[0]=D_ob\n",
- "dp[0].put_title(\"The Tempest\")\n",
- "p[0].show_author()\n",
- "dp[0].show_title()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Tom Clancy\n",
- "William Shakespeare\n",
- "\n",
- "\n",
- "William Shakespeare\n",
- "Title: The Tempest\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.2, Page Number: 361<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def who(self): #virtual function\n",
- " print \"Base\"\n",
- "\n",
- "class first_d(base):\n",
- " def who(self): #redifine who() relative to first_d\n",
- " print \"First derivation\"\n",
- " \n",
- "class second_d(base):\n",
- " def who(self): #redifine who() relative to second_d\n",
- " print \"Second derivation\"\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "base_obj=base()\n",
- "p=[base()]\n",
- "first_obj=first_d()\n",
- "second_obj=second_d()\n",
- "\n",
- "p[0]=base_obj\n",
- "p[0].who() #access base's who\n",
- "\n",
- "p[0]=first_obj\n",
- "p[0].who() #access first_d's who\n",
- "\n",
- "p[0]=second_obj\n",
- "p[0].who() #access second_d's who\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Base\n",
- "First derivation\n",
- "Second derivation\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.3, Page Number: 363<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def who(self): #virtual function\n",
- " print \"Base\"\n",
- "\n",
- "class first_d(base):\n",
- " def who(self): #redifine who() relative to first_d\n",
- " print \"First derivation\"\n",
- " \n",
- "class second_d(base):\n",
- " #who not defined\n",
- " pass\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "base_obj=base()\n",
- "p=[base()]\n",
- "first_obj=first_d()\n",
- "second_obj=second_d()\n",
- "\n",
- "p[0]=base_obj\n",
- "p[0].who() #access base's who\n",
- "\n",
- "p[0]=first_obj\n",
- "p[0].who() #access first_d's who\n",
- "\n",
- "p[0]=second_obj\n",
- "p[0].who() #access base's who because\n",
- " #second_d does not redefine it.\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Base\n",
- "First derivation\n",
- "Base\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.4, Page Number: 364<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class base:\n",
- " def who(self): #virtual function\n",
- " print \"Base\"\n",
- "\n",
- "class first_d(base):\n",
- " def who(self): #redifine who() relative to first_d\n",
- " print \"First derivation\"\n",
- " \n",
- "#second_d now inherited first_d -- not base\n",
- "class second_d(first_d):\n",
- " #who not defined\n",
- " pass\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "base_obj=base()\n",
- "p=[base()]\n",
- "first_obj=first_d()\n",
- "second_obj=second_d()\n",
- "\n",
- "p[0]=base_obj\n",
- "p[0].who() #access base's who\n",
- "\n",
- "p[0]=first_obj\n",
- "p[0].who() #access first_d's who\n",
- "\n",
- "p[0]=second_obj\n",
- "p[0].who() #access first_d's who because\n",
- " #second_d does not redefine it.\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Base\n",
- "First derivation\n",
- "First derivation\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.5, Page Number: 366<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class figure:\n",
- " def __init__(self):\n",
- " self._x=None\n",
- " self._y=None\n",
- " def set_dim(self,i,j):\n",
- " self._x=i\n",
- " self._y=j\n",
- " def show_area(self):\n",
- " print \"No area computation defined\",\n",
- " print \"for this class.\"\n",
- " \n",
- "class triangle(figure):\n",
- " def show_area(self):\n",
- " print \"Triangle with height\",\n",
- " print self._x,\"and base\",self._y,\n",
- " print \"has an area of\",\n",
- " print self._x*0.5*self._y,\".\"\n",
- " \n",
- "class rectangle(figure):\n",
- " def show_area(self):\n",
- " print \"Rectangle with dimensions\",\n",
- " print self._x,\"x\",self._y,\n",
- " print \"has an area of\",\n",
- " print self._x*self._y,\".\"\n",
- " \n",
- "#Variable declaration\n",
- "p=[figure()] #pointer to base type\n",
- "t=triangle() #objects of derived type\n",
- "r=rectangle()\n",
- "\n",
- "p[0]=t\n",
- "p[0].set_dim(10.0,5.0)\n",
- "p[0].show_area()\n",
- "\n",
- "p[0]=r\n",
- "p[0].set_dim(10.0,5.0)\n",
- "p[0].show_area()\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Triangle with height 10.0 and base 5.0 has an area of 25.0 .\n",
- "Rectangle with dimensions 10.0 x 5.0 has an area of 50.0 .\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 15.6, Page Number: 368<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class figure:\n",
- " def __init__(self):\n",
- " self._x=None\n",
- " self._y=None\n",
- " def set_dim(self,i,j=0):\n",
- " self._x=i\n",
- " self._y=j\n",
- " def show_area(self):\n",
- " print \"No area computation defined\",\n",
- " print \"for this class.\"\n",
- " \n",
- "class triangle(figure):\n",
- " def show_area(self):\n",
- " print \"Triangle with height\",\n",
- " print self._x,\"and base\",self._y,\n",
- " print \"has an area of\",\n",
- " print self._x*0.5*self._y,\".\"\n",
- " \n",
- "class rectangle(figure):\n",
- " def show_area(self):\n",
- " print \"Rectangle with dimensions\",\n",
- " print self._x,\"x\",self._y,\n",
- " print \"has an area of\",\n",
- " print self._x*self._y,\".\"\n",
- " \n",
- "class circle(figure):\n",
- " def show_area(self):\n",
- " print \"Circle with radius\",\n",
- " print self._x,\n",
- " print \"has an area of\",\n",
- " print 3.14*self._x*self._x,\".\"\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "p=[figure()] #pointer to base type\n",
- "t=triangle() #objects of derived type\n",
- "r=rectangle()\n",
- "c=circle()\n",
- "\n",
- "p[0]=t\n",
- "p[0].set_dim(10.0,5.0)\n",
- "p[0].show_area()\n",
- "\n",
- "p[0]=r\n",
- "p[0].set_dim(10.0,5.0)\n",
- "p[0].show_area()\n",
- "\n",
- "p[0]=c\n",
- "p[0].set_dim(9.0)\n",
- "p[0].show_area()\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Triangle with height 10.0 and base 5.0 has an area of 25.0 .\n",
- "Rectangle with dimensions 10.0 x 5.0 has an area of 50.0 .\n",
- "Circle with radius 9.0 has an area of 254.34 .\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_16(1).ipynb b/C++_from_the_Ground/Chapter_16(1).ipynb
deleted file mode 100755
index 98e3dc8a..00000000
--- a/C++_from_the_Ground/Chapter_16(1).ipynb
+++ /dev/null
@@ -1,674 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:60d976a21b55caeaa47bb2c8586e986eed54234a29f15a816e7270f74ad2660e"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 16: Templates<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.1, Page Number: 376<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def swapargs(a,b):\n",
- " temp=a[0]\n",
- " a[0]=b[0]\n",
- " b[0]=temp\n",
- "\n",
- "#Variable declaration\n",
- "i=[10]\n",
- "j=[20]\n",
- "x=[10.1]\n",
- "y=[23.3]\n",
- "a=['x']\n",
- "b=['z']\n",
- "\n",
- "print \"Original i, j: \",i[0],j[0]\n",
- "print \"Original x,y: \",x[0],y[0]\n",
- "print \"Original a,b: \",a[0],b[0]\n",
- "\n",
- "swapargs(i,j) #swap integers\n",
- "swapargs(x,y) #swap floats\n",
- "swapargs(a,b) #swap chars\n",
- "\n",
- "#Result\n",
- "print \"Swapped i, j: \",i[0],j[0]\n",
- "print \"Swapped x,y: \",x[0],y[0]\n",
- "print \"Swapped a,b: \",a[0],b[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original i, j: 10 20\n",
- "Original x,y: 10.1 23.3\n",
- "Original a,b: x z\n",
- "Swapped i, j: 20 10\n",
- "Swapped x,y: 23.3 10.1\n",
- "Swapped a,b: z x\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.2, Page Number: 378<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def myfunc(x,y):\n",
- " print x,y\n",
- " \n",
- "myfunc(10,\"hi\")\n",
- "myfunc(0.23,10L)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 hi\n",
- "0.23 10\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.3, Page Number: 379<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def swapargs(a,b):\n",
- " if isinstance(a[0],int): #integer version\n",
- " temp=a[0]\n",
- " a[0]=b[0]\n",
- " b[0]=temp\n",
- " print \"Inside swapargs int specialization.\"\n",
- " else: #generic version\n",
- " temp=a[0]\n",
- " a[0]=b[0]\n",
- " b[0]=temp\n",
- " print \"Inside template swapargs.\"\n",
- "\n",
- "#Variable declaration\n",
- "i=[10]\n",
- "j=[20]\n",
- "x=[10.1]\n",
- "y=[23.3]\n",
- "a=['x']\n",
- "b=['z']\n",
- "\n",
- "print \"Original i, j: \",i[0],j[0]\n",
- "print \"Original x,y: \",x[0],y[0]\n",
- "print \"Original a,b: \",a[0],b[0]\n",
- "\n",
- "swapargs(i,j) #calls explicitly overloaded swapargs()\n",
- "swapargs(x,y) #calls generic swapargs()\n",
- "swapargs(a,b) #calls generic swapargs()\n",
- "\n",
- "#Result\n",
- "print \"Swapped i, j: \",i[0],j[0]\n",
- "print \"Swapped x,y: \",x[0],y[0]\n",
- "print \"Swapped a,b: \",a[0],b[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original i, j: 10 20\n",
- "Original x,y: 10.1 23.3\n",
- "Original a,b: x z\n",
- "Inside swapargs int specialization.\n",
- "Inside template swapargs.\n",
- "Inside template swapargs.\n",
- "Swapped i, j: 20 10\n",
- "Swapped x,y: 23.3 10.1\n",
- "Swapped a,b: z x\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.4, Page Number: 381<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def f(a,b=None):\n",
- " if(b==None): #First version of f()\n",
- " print \"Inside f(X a)\"\n",
- " else: #Second version of f()\n",
- " print \"Inside f(X a, Y b)\"\n",
- " \n",
- "f(10) #calls f(X)\n",
- "f(10,20) #calls f(X,Y)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Inside f(X a)\n",
- "Inside f(X a, Y b)\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.5, Page Number: 382<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def repeat(data,times):\n",
- " while times:\n",
- " print data\n",
- " times-=1\n",
- " \n",
- "repeat(\"This is a test\",3)\n",
- "repeat(100,5)\n",
- "repeat(99.0/2, 4)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This is a test\n",
- "This is a test\n",
- "This is a test\n",
- "100\n",
- "100\n",
- "100\n",
- "100\n",
- "100\n",
- "49.5\n",
- "49.5\n",
- "49.5\n",
- "49.5\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.6, Page Number: 383<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def myabs(val):\n",
- " if val<0:\n",
- " return -val\n",
- " else:\n",
- " return val\n",
- "\n",
- "#Result\n",
- "print myabs(-10)\n",
- "print myabs(-10.0)\n",
- "print myabs(-10L)\n",
- "print myabs(-10.0)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n",
- "10.0\n",
- "10\n",
- "10.0\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.7, Page Number: 385<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def SIZE():\n",
- " return 100\n",
- "class queue:\n",
- " def __init__(self):\n",
- " self.q=[]\n",
- " self.sloc=self.rloc=0\n",
- " #Put an object into the queue\n",
- " def qput(self,i):\n",
- " if self.sloc==SIZE():\n",
- " print \"Queue is full.\"\n",
- " return\n",
- " self.sloc+=1\n",
- " self.q.append(i)\n",
- " #Get an object from the queue.\n",
- " def qget(self):\n",
- " if self.rloc==self.sloc:\n",
- " print \"Queue Underflow.\"\n",
- " return\n",
- " a=self.rloc\n",
- " self.rloc+=1\n",
- " return self.q[a]\n",
- " \n",
- "#Create two integer queues\n",
- "a=queue()\n",
- "b=queue()\n",
- "a.qput(10)\n",
- "b.qput(19)\n",
- "a.qput(20)\n",
- "b.qput(1)\n",
- "\n",
- "print a.qget(),\n",
- "print a.qget(),\n",
- "print b.qget(),\n",
- "print b.qget()\n",
- "\n",
- "#Create two double queues\n",
- "c=queue()\n",
- "d=queue()\n",
- "c.qput(10.12)\n",
- "d.qput(19.99)\n",
- "c.qput(-20.0)\n",
- "d.qput(0.986)\n",
- "\n",
- "print c.qget(),\n",
- "print c.qget(),\n",
- "print d.qget(),\n",
- "print d.qget()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 19 1\n",
- "10.12 -20.0 19.99 0.986\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.8, Page Number: 387<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,a,b):\n",
- " self.__i=a\n",
- " self.__j=b\n",
- " def show(self):\n",
- " print self.__i,self.__j\n",
- "\n",
- "ob1=myclass(10,0.23)\n",
- "ob2=myclass('X',\"This is a test\")\n",
- "\n",
- "#Result\n",
- "ob1.show() #Show int,double\n",
- "ob2.show() #Show char.char*\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 0.23\n",
- "X This is a test\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.9, Page Number: 388<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def SIZE():\n",
- " return 10\n",
- "\n",
- "class atype:\n",
- " def __init__(self):\n",
- " self.a=[]\n",
- " for i in range(SIZE()):\n",
- " self.a.append(i)\n",
- " #Implementing the [] overloading\n",
- " def op1(self,i,j):\n",
- " if (i<0 or i>=SIZE()):\n",
- " print \"\\nIndex value of \",\n",
- " print i,\" is out-of-bounds.\"\n",
- " return \n",
- " self.a[i]=j\n",
- " def op2(self,i):\n",
- " if (i<0 or i>SIZE()-1):\n",
- " print \"\\nIndex value of \",\n",
- " print i,\" is out-of-bounds.\"\n",
- " return\n",
- " return self.a[i]\n",
- " \n",
- "#Variable declaration\n",
- "intob=atype()\n",
- "doubleob=atype()\n",
- " \n",
- "print \"Integer array: \",\n",
- "for i in range(SIZE()):\n",
- " intob.op1(i,i)\n",
- "for i in range(SIZE()):\n",
- " print intob.op2(i),\n",
- " \n",
- "print \"\"\n",
- "\n",
- "print \"Double array: \",\n",
- "for i in range(SIZE()):\n",
- " doubleob.op1(i,float(i)/3)\n",
- "for i in range(SIZE()):\n",
- " print doubleob.op2(i),\n",
- " \n",
- "intob.op1(12,100)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Integer array: 0 1 2 3 4 5 6 7 8 9 \n",
- "Double array: 0.0 0.333333333333 0.666666666667 1.0 1.33333333333 1.66666666667 2.0 2.33333333333 2.66666666667 3.0 \n",
- "Index value of 12 is out-of-bounds.\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.10, Page Number: 389<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class atype:\n",
- " def __init__(self,size):\n",
- " self.a=[]\n",
- " self.size=size\n",
- " for i in range(size):\n",
- " self.a.append(i)\n",
- " #Implementing the [] overloading\n",
- " def op1(self,i,j):\n",
- " if (i<0 or i>self.size-1):\n",
- " print \"\\nIndex value of \",\n",
- " print i,\" is out-of-bounds.\"\n",
- " return\n",
- " self.a[i]=j\n",
- " def op2(self,i):\n",
- " if (i<0 or i>self.size-1):\n",
- " print \"\\nIndex value of \",\n",
- " print i,\" is out-of-bounds.\"\n",
- " return\n",
- " return self.a[i]\n",
- " \n",
- "#Variable declaration\n",
- "intob=atype(10)\n",
- "doubleob=atype(15)\n",
- " \n",
- "print \"Integer array: \",\n",
- "for i in range(10):\n",
- " intob.op1(i,i)\n",
- "for i in range(10):\n",
- " print intob.op2(i),\n",
- " \n",
- "print \"\"\n",
- "\n",
- "print \"Double array: \",\n",
- "for i in range(15):\n",
- " doubleob.op1(i,float(i)/3)\n",
- "for i in range(15):\n",
- " print doubleob.op2(i),\n",
- " \n",
- "intob.op1(12,100) #generates runtime error\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Integer array: 0 1 2 3 4 5 6 7 8 9 \n",
- "Double array: 0.0 0.333333333333 0.666666666667 1.0 1.33333333333 1.66666666667 2.0 2.33333333333 2.66666666667 3.0 3.33333333333 3.66666666667 4.0 4.33333333333 4.66666666667 \n",
- "Index value of 12 is out-of-bounds.\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.11, Page Number: 391<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class atype:\n",
- " def __init__(self,size=10):\n",
- " self.a=[]\n",
- " for i in range(size):\n",
- " self.a.append(i)\n",
- " #Implementing the [] overloading\n",
- " def op1(self,i,j):\n",
- " if (i<0 and i>SIZE()-1):\n",
- " print \"Index value of \"\n",
- " print i,\" is out-of-bounds.\"\n",
- " exit(1)\n",
- " self.a[i]=j\n",
- " def op2(self,i):\n",
- " if (i<0 and i>SIZE()-1):\n",
- " print \"Index value of \"\n",
- " print i,\" is out-of-bounds.\"\n",
- " exit()\n",
- " return self.a[i]\n",
- " \n",
- "#Variable declaration\n",
- "intob=atype(100)\n",
- "doubleob=atype()\n",
- "defarray=atype()\n",
- " \n",
- "print \"Integer array: \",\n",
- "for i in range(100):\n",
- " intob.op1(i,i)\n",
- "for i in range(100):\n",
- " print intob.op2(i),\n",
- " \n",
- "print \"\"\n",
- "\n",
- "print \"Double array: \",\n",
- "for i in range(10):\n",
- " doubleob.op1(i,float(i)/3)\n",
- "for i in range(10):\n",
- " print doubleob.op2(i),\n",
- " \n",
- "print \"\"\n",
- "\n",
- "print \"Defarray array: \",\n",
- "for i in range(10):\n",
- " doubleob.op1(i,i)\n",
- "for i in range(10):\n",
- " print doubleob.op2(i),\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Integer array: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 \n",
- "Double array: 0.0 0.333333333333 0.666666666667 1.0 1.33333333333 1.66666666667 2.0 2.33333333333 2.66666666667 3.0 \n",
- "Defarray array: 0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 16.12, Page Number: 393<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,a):\n",
- " if isinstance(a,int):\n",
- " print \"Inside myclass<int>specialization\"\n",
- " self.__x=a*a\n",
- " else:\n",
- " print \"Inside generic myclass\"\n",
- " self.__x=a\n",
- " def getx(self):\n",
- " return self.__x\n",
- " \n",
- "d=myclass(10.1)\n",
- "print \"double: \",d.getx(),\"\\n\"\n",
- "\n",
- "i=myclass(5)\n",
- "print \"int: \",i.getx()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Inside generic myclass\n",
- "double: 10.1 \n",
- "\n",
- "Inside myclass<int>specialization\n",
- "int: 25\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_17(1).ipynb b/C++_from_the_Ground/Chapter_17(1).ipynb
deleted file mode 100755
index c50f48aa..00000000
--- a/C++_from_the_Ground/Chapter_17(1).ipynb
+++ /dev/null
@@ -1,730 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:636fe844c88ef46d09064f199c6b3a4c62e262611a41cc6f126f08459b94982e"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 17: Exception Handling<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.1, Page Number: 397<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "print \"start\"\n",
- "\n",
- "try: #start a try block\n",
- " print \"Inside try block\"\n",
- " raise Exception(99) #raise an error\n",
- " print \"This will not execute\"\n",
- "except Exception,i: #catch an error\n",
- " print \"Caught an exception -- value is:\",\n",
- " print i\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Inside try block\n",
- "Caught an exception -- value is: 99\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.2, Page Number: 399<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import sys\n",
- "\n",
- "\n",
- "\n",
- "def main():\n",
- " print \"start\"\n",
- " try: #start a try block\n",
- " print \"Inside try block\"\n",
- " raise Exception(99) #raise an error\n",
- " print \"This will not execute\"\n",
- " except Exception,i: #catch an error\n",
- " if isinstance(i,float):\n",
- " print \"Caught an exception -- value is:\",\n",
- " print i\n",
- " else:\n",
- " print \"Abnormal program termination\"\n",
- " return\n",
- " print \"end\"\n",
- "\n",
- " \n",
- "main()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Inside try block\n",
- "Abnormal program termination\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.3, Page Number: 400<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def Xtest(test):\n",
- " print \"Inside Xtest, test is: \",test\n",
- " if(test):\n",
- " raise Exception(test)\n",
- " \n",
- "print \"start\"\n",
- "\n",
- "try: #start a try block\n",
- " print \"Inside try block\"\n",
- " Xtest(0)\n",
- " Xtest(1)\n",
- " Xtest(2)\n",
- "except Exception,i: #catch an error\n",
- " print \"Caught an exception -- value is:\",\n",
- " print i\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Inside try block\n",
- "Inside Xtest, test is: 0\n",
- "Inside Xtest, test is: 1\n",
- "Caught an exception -- value is: 1\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.4, Page Number: 401<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def Xhandler(test):\n",
- " try:\n",
- " if(test):\n",
- " raise Exception(test)\n",
- " except Exception,i:\n",
- " print \"Caught One! Ex #:\",i\n",
- " \n",
- "print \"start\"\n",
- "\n",
- "Xhandler(1)\n",
- "Xhandler(2)\n",
- "Xhandler(0)\n",
- "Xhandler(3)\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caught One! Ex #: 1\n",
- "Caught One! Ex #: 2\n",
- "Caught One! Ex #: 3\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.5, Page Number: 401<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class MyException:\n",
- " def __init__(self,s):\n",
- " self.str_what=s\n",
- " \n",
- "#Variable declaration\n",
- "a=None \n",
- "b=None\n",
- "\n",
- "try:\n",
- " print \"Enter numerator and denominator:\"\n",
- " #User-input\n",
- " a=10 \n",
- " b=0\n",
- " if not(b):\n",
- " raise MyException(\"Cannot divide by zero!\")\n",
- " else:\n",
- " print \"Quotient is\",a/b\n",
- "except MyException as e: #catch an error\n",
- " print e.str_what\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter numerator and denominator:\n",
- "Cannot divide by zero!\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.6, Page Number: 403<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class MyException:\n",
- " def __init__(self,s):\n",
- " self.x=s\n",
- " \n",
- "def Xhandler(test):\n",
- " try:\n",
- " if(test):\n",
- " raise MyException(test)\n",
- " else:\n",
- " raise MyException(\"Value is zero\")\n",
- " except MyException as i:\n",
- " if isinstance(i.x,int):\n",
- " print \"Caught One! Ex #:\",i.x\n",
- " else:\n",
- " print \"Caught a string:\",\n",
- " print i.x\n",
- " \n",
- "print \"start\"\n",
- "\n",
- "Xhandler(1)\n",
- "Xhandler(2)\n",
- "Xhandler(0)\n",
- "Xhandler(3)\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caught One! Ex #: 1\n",
- "Caught One! Ex #: 2\n",
- "Caught a string: Value is zero\n",
- "Caught One! Ex #: 3\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.7, Page Number: 404<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class B:\n",
- " pass\n",
- "\n",
- "class D(B):\n",
- " pass\n",
- "\n",
- "derived=D()\n",
- "\n",
- "try:\n",
- " raise B()\n",
- "except B as b:\n",
- " print \"Caught a base class.\"\n",
- "except D as d:\n",
- " print \"This wont execute.\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Caught a base class.\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.8, Page Number: 405<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def Xhandler(test):\n",
- " try:\n",
- " if test==0:\n",
- " raise Exception(test) #throw int\n",
- " if test==1:\n",
- " raise Exception('a') #throw char\n",
- " if test==2:\n",
- " raise Exception(123.23) #throw double\n",
- " except: #Catches all exceptions\n",
- " print \"Caught One!\"\n",
- "\n",
- "print \"start\"\n",
- "\n",
- "Xhandler(0)\n",
- "Xhandler(1)\n",
- "Xhandler(2)\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caught One!\n",
- "Caught One!\n",
- "Caught One!\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.9, Page Number: 405<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class MyException:\n",
- " def __init__(self,s):\n",
- " self.x=s\n",
- " \n",
- "def Xhandler(test):\n",
- " try:\n",
- " if test==0:\n",
- " raise MyException(test) #throw int\n",
- " if test==1:\n",
- " raise MyException('a') #throw char\n",
- " if test==2:\n",
- " raise MyException(123.23) #throw double\n",
- " except MyException as i:\n",
- " if isinstance(i.x,int): #catch an int exception\n",
- " print \"Caught\",i.x \n",
- " else: #catch all other exceptions\n",
- " print \"Caught One!\"\n",
- " \n",
- "\n",
- "print \"start\"\n",
- "\n",
- "Xhandler(0)\n",
- "Xhandler(1)\n",
- "Xhandler(2)\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caught 0\n",
- "Caught One!\n",
- "Caught One!\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.10, Page Number: 407<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class MyException:\n",
- " def __init__(self,s):\n",
- " self.x=s\n",
- " \n",
- "#This function can only throw ints, chars and doubles\n",
- "def Xhandler(test):\n",
- " if test==0:\n",
- " raise MyException(test) #throw int\n",
- " if test==1:\n",
- " raise MyException('a') #throw char\n",
- " if test==2:\n",
- " raise MyException(123.23) #throw double\n",
- " \n",
- "\n",
- "print \"start\"\n",
- "try:\n",
- " Xhandler(0)\n",
- "except MyException as i:\n",
- " if isinstance(i.x,int): #catch an int exception\n",
- " print \"Caught int\" \n",
- " elif isinstance(i.x,str): #catch a char exception\n",
- " print \"Caught char\"\n",
- " elif isinstance(i.x,float): #catch a float exception\n",
- " print \"Caught double\"\n",
- "\n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caught int\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.11, Page Number: 408<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def Xhandler():\n",
- " try:\n",
- " raise Exception(\"hello\") #throw a char *\n",
- " except Exception,c: #catch a char *\n",
- " print \"Caugh char * inside Xhandler\"\n",
- " raise #rethrow char * out of function\n",
- " \n",
- "print \"start\"\n",
- "try:\n",
- " Xhandler()\n",
- "except Exception,c:\n",
- " print \"Caught char * inside main\"\n",
- " \n",
- "print \"end\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "start\n",
- "Caugh char * inside Xhandler\n",
- "Caught char * inside main\n",
- "end\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.12, Page Number: 410<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "p=[]\n",
- "\n",
- "try:\n",
- " for i in range(32):\n",
- " p.append(c_int())\n",
- "except MemoryError,m:\n",
- " print \"Allocation failure.\"\n",
- " \n",
- "for i in range(32):\n",
- " p[i]=i\n",
- " \n",
- "for i in range(32):\n",
- " print p[i],\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.13, Page Number: 410<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "p=[]\n",
- "\n",
- "\n",
- "for i in range(32):\n",
- " p.append(c_int()) \n",
- "if not(p):\n",
- " print \"Allocation failure.\"\n",
- " \n",
- "for i in range(32):\n",
- " p[i]=i\n",
- " \n",
- "for i in range(32):\n",
- " print p[i],\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 17.13, Page Number: 412<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,i=0,j=0,k=0): #3=D coordinates\n",
- " if(i==0 and j==0 and k==0):\n",
- " self.x=self.y=self.z=0\n",
- " print \"Constructing 0, 0, 0\"\n",
- " else:\n",
- " self.x=i\n",
- " self.y=j\n",
- " self.z=k\n",
- " print \"Constructing\",i,\",\",j,\",\",k\n",
- " def __del__(self):\n",
- " print \"Destructing\"\n",
- " #new overloaded relative to three_d.\n",
- " def __new__(typ, *args, **kwargs):\n",
- " obj = object.__new__(typ, *args, **kwargs)\n",
- " return obj\n",
- " def show(self):\n",
- " print self.x,\",\",\n",
- " print self.y,\",\",\n",
- " print self.z\n",
- " \n",
- "p1=[]*3\n",
- "p2=[]\n",
- " \n",
- "try:\n",
- " print \"Allocating array of three_d objects.\"\n",
- " for i in range(3): #allocate array\n",
- " p1.append(three_d())\n",
- " print \"Allocating three_d object.\"\n",
- " p2.append(three_d(5,6,7)) #allocate object\n",
- "except MemoryError:\n",
- " print \"Allocation error\"\n",
- " \n",
- "p1[2].show()\n",
- "p2[0].show()\n",
- "\n",
- "\n",
- "for i in xrange(2,-1,-1):\n",
- " del p1[i] #delete array\n",
- "print \"Deleting array of thee_d objects.\"\n",
- "\n",
- "del p2[0] #delete object\n",
- "print \"Deleting three_d object.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Allocating array of three_d objects.\n",
- "Constructing 0, 0, 0\n",
- "Constructing 0, 0, 0\n",
- "Constructing 0, 0, 0\n",
- "Allocating three_d object.\n",
- "Constructing 5 , 6 , 7\n",
- "0 , 0 , 0\n",
- "5 , 6 , 7\n",
- "Destructing\n",
- "Destructing\n",
- "Destructing\n",
- "Deleting array of thee_d objects.\n",
- "Destructing\n",
- "Deleting three_d object.\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_18(1).ipynb b/C++_from_the_Ground/Chapter_18(1).ipynb
deleted file mode 100755
index df4cabc2..00000000
--- a/C++_from_the_Ground/Chapter_18(1).ipynb
+++ /dev/null
@@ -1,881 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:85eae8322c208f1f26e859bb0f4dac6f86b35c3ac105ed98ac2d0fbf05287f0e"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 18: The C++ I/O System<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.1, Page Number: 421<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,a,b,c): #3D coordinates\n",
- " self.x=a\n",
- " self.y=b\n",
- " self.z=c\n",
- " #Display x,y,z coordinates - three_d inserter.\n",
- " def __repr__(self):\n",
- " return str(self.x)+\", \"+str(self.y)+\", \"+str(self.z)+\"\\n\"\n",
- "\n",
- "#Variable declaration\n",
- "a=three_d(1,2,3)\n",
- "b=three_d(3,4,5)\n",
- "c=three_d(5,6,7)\n",
- "\n",
- "#Result\n",
- "print a,b,c"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1, 2, 3\n",
- " 3, 4, 5\n",
- " 5, 6, 7\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.2, Page Number: 423<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class thrnee_d:\n",
- " def __init__(self,a,b,c): #3D coordinates\n",
- " self.x=a\n",
- " self.y=b\n",
- " self.z=c\n",
- " #Display x,y,z coordinates - three_d inserter.\n",
- " __repr__=repr \n",
- " \n",
- "#Friend function \n",
- "def repr():\n",
- " return str(self.x)+\", \"+str(self.y)+\", \"+str(self.z)+\"\\n\"\n",
- "\n",
- "#Variable declaration\n",
- "a=three_d(1,2,3)\n",
- "b=three_d(3,4,5)\n",
- "c=three_d(5,6,7)\n",
- "\n",
- "print a,b,c"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1, 2, 3\n",
- " 3, 4, 5\n",
- " 5, 6, 7\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.3, Page Number: 424<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,a,b,c): #3D coordinates\n",
- " self.x=a\n",
- " self.y=b\n",
- " self.z=c\n",
- " #Display x,y,z coordinates - three_d inserter.\n",
- " def __repr__(self):\n",
- " return str(self.x)+\", \"+str(self.y)+\", \"+str(self.z)\n",
- "\n",
- "#Variable declaration\n",
- "a=three_d(1,2,3)\n",
- "\n",
- "print a\n",
- "\n",
- "#User input\n",
- "print \"Enter X,Y,Z values:\"\n",
- "a=three_d(4,5,6) \n",
- "print a"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1, 2, 3\n",
- "Enter X,Y,Z values:\n",
- "4, 5, 6\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.4, Page Number: 428<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "print '{0:+d}'.format(123), #for ios::showpos\n",
- "if(123.23>0):\n",
- " i='{0:e}'.format(123.23) #for ios::scientific \n",
- " i='+'+i\n",
- " print i\n",
- "else :\n",
- " print '{0:e}'.format(123.23)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "+123 +1.232300e+02\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.5, Page Number: 430<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "print '{0:+d}'.format(123), #for ios::showpos\n",
- "if(123.23>0):\n",
- " i='{0:e}'.format(123.23) #for ios::scientific \n",
- " i='+'+i\n",
- " print i\n",
- "else :\n",
- " print '{0:e}'.format(123.23)\n",
- "\n",
- " \n",
- "print '{:10.2f}'.format(123.23), #2 digits left of decimal\n",
- "if(123.23>0):\n",
- " i='{0:.2e}'.format(123.23) #for ios::scientific \n",
- " i='+'+i\n",
- " print i\n",
- "else :\n",
- " print '{0:.2e}'.format(123.23)\n",
- " \n",
- " \n",
- "print '{:#>10}'.format(str(123)), #for ios::fill\n",
- "if(123.23>0): \n",
- " i='{0:.2e}'.format(123.23) #for ios::scientific \n",
- " i='+'+i\n",
- " print i\n",
- "else :\n",
- " print '{0:.2e}'.format(123.23)\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "+123 +1.232300e+02\n",
- " 123.23 +1.23e+02\n",
- "#######123 +1.23e+02\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.6, Page Number: 432<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "print '{0:.0e}'.format(1000.243) #for setprecision\n",
- "print '{:>20}'.format(\"Hello There\") #to set width and right align\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1e+03\n",
- " Hello There\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.7, Page Number: 433<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "print '{0:+d}'.format(123), #for ios::showpos\n",
- "if(123.23>0):\n",
- " i='{0:e}'.format(123.23) #for ios::scientific \n",
- " i='+'+i\n",
- " print i\n",
- "else :\n",
- " print '{0:e}'.format(123.23)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "+123 +1.232300e+02\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.8, Page Number: 433<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#User input\n",
- "s=\" Hello\"\n",
- "\n",
- "#Result\n",
- "print s.lstrip() #lstrip removes leading spaces"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.9, Page Number: 434<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def setup(s):\n",
- " return '{:$<10}'.format(str(s))\n",
- "\n",
- "\n",
- "#Result\n",
- "print 10,setup(10)\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 10$$$$$$$$\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.10, Page Number: 435<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def prompt():\n",
- " print \"Enter number using hex format:\"\n",
- " hex=0x46\n",
- " return hex\n",
- "\n",
- "\n",
- "#Result\n",
- "i=prompt()\n",
- "print i\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": []
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.11, Page Number: 438<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "out=open(\"test\",'w')\n",
- "\n",
- "\n",
- "if(not(out)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " #Write to file\n",
- " out.write(\"10 123.23\\n\")\n",
- " out.write(\"This is a short text file.\")\n",
- " #Close the file\n",
- " out.close()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.12, Page Number: 438<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- " \n",
- "In=open(\"test\",'r')\n",
- " \n",
- "if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " #Read file\n",
- " i=In.read(2)\n",
- " ch=In.read(1)\n",
- " f=In.read(6)\n",
- " str=In.read()\n",
- " print i,f,ch\n",
- " print str\n",
- " #Close the file\n",
- " out.close()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 123.23 \n",
- "\n",
- "This is a short text file.\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.13, Page Number: 439<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import sys\n",
- " \n",
- "if not(len(sys.argv)==2):\n",
- " print \"Usage: PR <filename>\\n\"\n",
- "else:\n",
- " #Open a file\n",
- " In=open(sys.argv[1],'r')\n",
- "\n",
- " #In case file cannot open\n",
- " if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- " else:\n",
- " #Read file\n",
- " ch=In.read()\n",
- " print ch\n",
- " In.close()\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Usage: PR <filename>\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.14, Page Number: 440<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import sys\n",
- "\n",
- "p=\"hello there\"\n",
- "\n",
- "out=open(\"test\",'w')\n",
- "\n",
- "#In case file cannot open\n",
- "if(not(out)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " #Write to file\n",
- " for i in range(len(p)):\n",
- " out.write(p[i])\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.15, Page Number: 441<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import sys\n",
- "\n",
- "n=[1,2,3,4,5]\n",
- "\n",
- "#Open a file 'test'\n",
- "out=open(\"test\",'w')\n",
- "\n",
- "#In case file cannot open\n",
- "if(not(out)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " #Write to file\n",
- " for i in range(5):\n",
- " out.write(chr(n[i]))\n",
- " out.close()\n",
- " \n",
- "for i in range(5): #clear array\n",
- " n[i]=0\n",
- " \n",
- "#Open the file\n",
- "In=open(\"test\",'r')\n",
- "\n",
- "#In case file cannot open\n",
- "if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " #Read file\n",
- " for i in range(5):\n",
- " n[i]=ord(In.read(1))\n",
- "\n",
- "#Result, shows value from file\n",
- "for i in range(5):\n",
- " print n[i],\n",
- " \n",
- "In.close()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2 3 4 5\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.16, Page Number: 442<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "import sys\n",
- " \n",
- "if not(len(sys.argv)==2):\n",
- " print \"Usage: PR <filename>\\n\"\n",
- "else:\n",
- " #Open a file\n",
- " In=open(sys.argv[1],'r')\n",
- "\n",
- " #In case file cannot open\n",
- " if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- " else:\n",
- " #Read file\n",
- " while True:\n",
- " ch=In.read(1)\n",
- " if not ch:\n",
- " break\n",
- " print ch,\n",
- " #Close file\n",
- " In.close()\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Usage: PR <filename>\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.17, Page Number: 443<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "out=open(\"test1\",'w')\n",
- "out.write(\"Hello\")\n",
- "out.close()\n",
- " \n",
- "out=open(\"test2\",'w')\n",
- "out.write(\"There\")\n",
- "out.close()\n",
- "\n",
- " \n",
- "f1=open(\"test1\",'r')\n",
- " \n",
- "if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- "\n",
- " \n",
- "f2=open(\"test2\",'r')\n",
- " \n",
- "if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- " \n",
- "print \"Comparing files...\"\n",
- "\n",
- "buf1=f1.read()\n",
- "buf2=f2.read()\n",
- "print buf1,buf2\n",
- "\n",
- "if len(buf1)==len(buf2):\n",
- " print \"Files are of different sizes.\"\n",
- " f1.close()\n",
- " f2.close()\n",
- "else:\n",
- " \n",
- " flag=1\n",
- " for i in range(len(buf1)):\n",
- " if not(buf1[i]==buf2[i]):\n",
- " print \"Files differ.\"\n",
- " f1.close()\n",
- " f2.close()\n",
- " flag=0\n",
- " break\n",
- " if flag==1:\n",
- " print \"Files are the same.\"\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Comparing files...\n",
- "Hello There\n",
- "Files are of different sizes.\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.18, Page Number: 445<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "print \"Enter your name:\"\n",
- " \n",
- "str=\"hello world\"\n",
- "\n",
- "print str"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name:\n",
- "hello world\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.19, Page Number: 447<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " out=open(\"test\",'r+b')\n",
- "out.write(\"Hello\")\n",
- "\n",
- " \n",
- "if(not(out)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " out.seek(2,0)\n",
- " out.write('X')\n",
- " out.close()\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.20, Page Number: 447<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- " \n",
- "out=open(\"test\",'r+b')\n",
- "out.write(\"Hello\")\n",
- "out.close()\n",
- "\n",
- "In=open(\"test\",'r')\n",
- " \n",
- "if(not(In)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " In.seek(2,0)\n",
- " ch=In.read()\n",
- " print ch\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "llo\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 18.21, Page Number: 450<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,a,b,c):\n",
- " self.__x=a\n",
- " self.__y=b\n",
- " self.__z=c\n",
- " def __repr__(self):\n",
- " c=(\"%d\"%self.__x)+\", \"+(\"%d\"%self.__y)+\", \"+(\"%d\"%self.__z)+\"\\n\"\n",
- " return c \n",
- "\n",
- " \n",
- "a=three_d(1,2,3)\n",
- "b=three_d(3,4,5)\n",
- "c=three_d(5,6,7)\n",
- " \n",
- "out=open(\"threed\",'w')\n",
- " \n",
- "if(not(out)):\n",
- " print \"Cannot open file.\"\n",
- "else:\n",
- " out.write(a.__repr__())\n",
- " out.write(b.__repr__())\n",
- " out.write(c.__repr__())\n",
- "\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 18
- },
- {
- "cell_type": "raw",
- "metadata": {},
- "source": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_19(1).ipynb b/C++_from_the_Ground/Chapter_19(1).ipynb
deleted file mode 100755
index 7f04b7ea..00000000
--- a/C++_from_the_Ground/Chapter_19(1).ipynb
+++ /dev/null
@@ -1,725 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:20d38d92a3a25bc02f8bf5fb1b35ef1503e1987dff61d43c4881deab4561fe2c"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 19: Run-Time Type ID and the Casting Operators<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.1, Page Number: 453<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " pass\n",
- "\n",
- "#Variable declaration\n",
- "i=j=0\n",
- "f=0.0\n",
- "ob=myclass()\n",
- "\n",
- "print \"The type of i is:\",type(i).__name__\n",
- "print \"The type of f is:\",type(f).__name__\n",
- "print \"The type of ob is:\",ob.__class__.__name__\n",
- "print \"\\n\"\n",
- "\n",
- "if type(i)==type(j):\n",
- " print \"The types of i and j are the same\"\n",
- " \n",
- "if not(type(i)==type(f)):\n",
- " print \"The types of i and f are not the same\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The type of i is: int\n",
- "The type of f is: float\n",
- "The type of ob is: myclass\n",
- "\n",
- "\n",
- "The types of i and j are the same\n",
- "The types of i and f are not the same\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.2, Page Number: 454<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class Base:\n",
- " pass\n",
- "class Derived1(Base):\n",
- " pass\n",
- "class Derived2(Base):\n",
- " pass\n",
- "\n",
- "#Variable declaration\n",
- "baseob=Base()\n",
- "p=[Base()]\n",
- "ob1=Derived1()\n",
- "ob2=Derived2()\n",
- "\n",
- "\n",
- "p[0]=baseob\n",
- "print \"p is pointing to an object of type\",\n",
- "print p[0].__class__.__name__\n",
- "\n",
- "p[0]=ob1\n",
- "print \"p is pointing to an object of type\",\n",
- "print p[0].__class__.__name__\n",
- "\n",
- "p[0]=ob2\n",
- "print \"p is pointing to an object of type\",\n",
- "print p[0].__class__.__name__"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "p is pointing to an object of type Base\n",
- "p is pointing to an object of type Derived1\n",
- "p is pointing to an object of type Derived2\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.3, Page Number: 455<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class Base:\n",
- " pass\n",
- "class Derived1(Base):\n",
- " pass\n",
- "class Derived2(Base):\n",
- " pass\n",
- "\n",
- "def WhatType(ob):\n",
- " print \"ob is referencing an object of type\",\n",
- " print ob.__class__.__name__\n",
- " \n",
- " \n",
- "#Variable declaration\n",
- "baseob=Base()\n",
- "p=[Base()]\n",
- "ob1=Derived1()\n",
- "ob2=Derived2()\n",
- "\n",
- "WhatType(baseob)\n",
- "WhatType(ob1)\n",
- "WhatType(ob2)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ob is referencing an object of type Base\n",
- "ob is referencing an object of type Derived1\n",
- "ob is referencing an object of type Derived2\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.4, Page Number: 456<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import random\n",
- "\n",
- "class figure:\n",
- " def __init__(self,i,j):\n",
- " self._x=i\n",
- " self._y=j\n",
- " \n",
- "class triangle(figure):\n",
- " def __init__(self,i,j):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*0.5*self._y\n",
- " \n",
- "class rectangle(figure):\n",
- " def __init__(self,i,j):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*self._y\n",
- " \n",
- "class circle(figure):\n",
- " def __init__(self,i,j=0):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*self._x*3.14\n",
- " \n",
- "def factory():\n",
- " i=random.randint(0,2)\n",
- " if i==0:\n",
- " return circle(10.0)\n",
- " elif i==1:\n",
- " return triangle(10.1,5.3)\n",
- " elif i==2:\n",
- " return rectangle(4.3,5.7)\n",
- " \n",
- "\n",
- "t=c=r=0 \n",
- "p=[None]\n",
- "\n",
- "#generate and count objects\n",
- "for i in range(10):\n",
- " p[0]=factory() #generate an object\n",
- " print \"Object is \",p[0].__class__.__name__,\". \",\n",
- " #count it\n",
- " if p[0].__class__.__name__==triangle.__name__:\n",
- " t+=1\n",
- " if p[0].__class__.__name__==rectangle.__name__:\n",
- " r+=1\n",
- " if p[0].__class__.__name__==circle.__name__:\n",
- " c+=1\n",
- " #display its area\n",
- " print \"Area is\",p[0].area()\n",
- "\n",
- "print \"Objects generated:\"\n",
- "print \"Triangles:\",t\n",
- "print \"Rectangles:\",r\n",
- "print \"Circles:\",c"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Object is circle . Area is 314.0\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is circle . Area is 314.0\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is circle . Area is 314.0\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is triangle . Area is 26.765\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is circle . Area is 314.0\n",
- "Objects generated:\n",
- "Triangles: 1\n",
- "Rectangles: 5\n",
- "Circles: 4\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.5, Page Number: 456<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "class myclass:\n",
- " def __init__(self,i):\n",
- " self.__a=i\n",
- " \n",
- "o1=myclass(10)\n",
- "o2=myclass(9)\n",
- "o3=myclass(7.2)\n",
- "\n",
- "print \"Type of o1 is\",o1.__class__.__name__\n",
- "\n",
- "print \"Type of o2 is\",o2.__class__.__name__\n",
- "\n",
- "print \"Type of o3 is\",o3.__class__.__name__\n",
- "\n",
- "print\n",
- "\n",
- "if o1.__class__.__name__==o2.__class__.__name__:\n",
- " print \"o1 and o2 are the same type\"\n",
- " \n",
- "if o1.__class__.__name__==o3.__class__.__name__:\n",
- " print \"Error\"\n",
- "else:\n",
- " print \"o1 and o3 are different types\"\n",
- "\n",
- "#This prints error because python doesnt use templates."
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Type of o1 is myclass\n",
- "Type of o2 is myclass\n",
- "Type of o3 is myclass\n",
- "\n",
- "o1 and o2 are the same type\n",
- "Error\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.6, Page Number: 460<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import random\n",
- "\n",
- "class figure:\n",
- " def __init__(self,i,j):\n",
- " self._x=i\n",
- " self._y=j\n",
- " \n",
- "class triangle(figure):\n",
- " def __init__(self,i,j):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*0.5*self._y\n",
- " \n",
- "class rectangle(figure):\n",
- " def __init__(self,i,j):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*self._y\n",
- " \n",
- "class circle(figure):\n",
- " def __init__(self,i,j=0):\n",
- " figure.__init__(self,i,j)\n",
- " def area(self):\n",
- " return self._x*self._x*3.14\n",
- " \n",
- "def factory():\n",
- " i=random.randint(0,2)\n",
- " if i==0:\n",
- " return circle(10.0)\n",
- " elif i==1:\n",
- " return triangle(10.1,5.3)\n",
- " elif i==2:\n",
- " return rectangle(4.3,5.7)\n",
- " \n",
- "\n",
- "t=c=r=0 \n",
- "p=[None]\n",
- "\n",
- "#generate and count objects\n",
- "for i in range(10):\n",
- " p[0]=factory() #generate an object\n",
- " print \"Object is \",p[0].__class__.__name__,\". \",\n",
- " #count it\n",
- " if p[0].__class__.__name__==triangle.__name__:\n",
- " t+=1\n",
- " if p[0].__class__.__name__==rectangle.__name__:\n",
- " r+=1\n",
- " if p[0].__class__.__name__==circle.__name__:\n",
- " c+=1\n",
- " #display its area\n",
- " print \"Area is\",p[0].area()\n",
- "\n",
- "print \"Objects generated:\"\n",
- "print \"Triangles:\",t\n",
- "print \"Rectangles:\",r\n",
- "print \"Circles:\",c"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Object is triangle . Area is 26.765\n",
- "Object is circle . Area is 314.0\n",
- "Object is circle . Area is 314.0\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is circle . Area is 314.0\n",
- "Object is circle . Area is 314.0\n",
- "Object is rectangle . Area is 24.51\n",
- "Object is triangle . Area is 26.765\n",
- "Objects generated:\n",
- "Triangles: 2\n",
- "Rectangles: 4\n",
- "Circles: 4\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.7, Page Number: 463<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class Base:\n",
- " def f(self):\n",
- " print \"Inside Base\"\n",
- " \n",
- "class Derived(Base):\n",
- " def f(self):\n",
- " print \"Inside Derived\"\n",
- " \n",
- "bp=[Base()] #pointer to base\n",
- "b_ob=Base() \n",
- "dp=[Derived()] #pointer to derived\n",
- "d_ob=Derived()\n",
- "\n",
- "dp[0]=d_ob\n",
- "if dp[0]:\n",
- " print \"Cast from Derived * to Derived * OK.\"\n",
- " dp[0].f()\n",
- "else:\n",
- " print \"Error\"\n",
- "print\n",
- "\n",
- "bp[0]=d_ob\n",
- "if bp[0]:\n",
- " print \"Cast from Derived * to Base * OK.\"\n",
- " bp[0].f()\n",
- "else:\n",
- " print \"Error\"\n",
- "print\n",
- "\n",
- "bp[0]=b_ob\n",
- "if bp[0]:\n",
- " print \"Cast from Base * to Base * OK.\"\n",
- " bp[0].f()\n",
- "else:\n",
- " print \"Error\"\n",
- "print\n",
- "\n",
- "dp[0]=b_ob\n",
- "if dp[0]:\n",
- " print \"Error\"\n",
- "else:\n",
- " print \"Cast from Base * to Derived * not OK.\"\n",
- "print\n",
- "\n",
- "bp[0]=d_ob #bp points to Derived object\n",
- "dp[0]=bp[0]\n",
- "if dp[0]:\n",
- " print \"Cast bp to a Derived * OK.\"\n",
- " print \"because bp is really pointing\\n\",\n",
- " print \"to a Derived object.\"\n",
- " dp[0].f()\n",
- "else:\n",
- " print \"Error\"\n",
- "print\n",
- "\n",
- "bp[0]=b_ob #bp points to Base object\n",
- "dp[0]=bp[0]\n",
- "if dp[0]:\n",
- " print \"Error\"\n",
- "else:\n",
- " print \"Now casting bp to a Derived *\\n\",\n",
- " print \"is not OK because bp is really\\n\",\n",
- " print \" pointing to a Base object.\"\n",
- "print\n",
- "\n",
- "dp[0]=d_ob #dp points to Derived object\n",
- "bp[0]=dp[0]\n",
- "if bp[0]:\n",
- " print \"Casting dp to a Base * is OK.\"\n",
- " bp[0].f()\n",
- "else:\n",
- " print \"Error\"\n",
- "print\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Cast from Derived * to Derived * OK.\n",
- "Inside Derived\n",
- "\n",
- "Cast from Derived * to Base * OK.\n",
- "Inside Derived\n",
- "\n",
- "Cast from Base * to Base * OK.\n",
- "Inside Base\n",
- "\n",
- "Error\n",
- "\n",
- "Cast bp to a Derived * OK.\n",
- "because bp is really pointing\n",
- "to a Derived object.\n",
- "Inside Derived\n",
- "\n",
- "Error\n",
- "\n",
- "Casting dp to a Base * is OK.\n",
- "Inside Derived\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.8, Page Number: 465<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class Base:\n",
- " def f(self):\n",
- " pass\n",
- " \n",
- "class Derived(Base):\n",
- " def derivedOnly(self):\n",
- " print \"Is a Derived Object\"\n",
- " \n",
- "bp=[Base()] #pointer to base\n",
- "b_ob=Base() \n",
- "dp=[Derived()] #pointer to derived\n",
- "d_ob=Derived()\n",
- "\n",
- "#Use typeid\n",
- "\n",
- "bp[0]=b_ob\n",
- "if bp[0].__class__.__name__==Derived.__name__:\n",
- " dp[0]=bp[0]\n",
- " dp[0].derivedOnly()\n",
- "else:\n",
- " print \"Cast from Base to Derived failed.\"\n",
- " \n",
- "bp[0]=d_ob\n",
- "if bp[0].__class__.__name__==Derived.__name__:\n",
- " dp[0]=bp[0]\n",
- " dp[0].derivedOnly()\n",
- "else:\n",
- " print \"Error, cast should work!\"\n",
- " \n",
- "#Use dynamic_cast\n",
- "\n",
- "bp[0]=b_ob\n",
- "dp[0]=bp[0]\n",
- "if dp[0].__class__.__name__==Derived.__name__:\n",
- " dp[0].derivedOnly()\n",
- "else:\n",
- " print \"Cast from Base to Derived failed.\"\n",
- " \n",
- "bp[0]=d_ob\n",
- "dp[0]=bp[0]\n",
- "if dp:\n",
- " dp[0].derivedOnly()\n",
- "else:\n",
- " print \"Error, cast should work!\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Cast from Base to Derived failed.\n",
- "Is a Derived Object\n",
- "Cast from Base to Derived failed.\n",
- "Is a Derived Object\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.9, Page Number: 467<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def f(p):\n",
- " v=p\n",
- " v[0]=100\n",
- " \n",
- "#Variable declaration\n",
- "x=[]\n",
- "\n",
- "x.append(99)\n",
- "print \"x before call:\",x[0]\n",
- "f(x)\n",
- "print \"x after call:\",x[0]\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "x before call: 99\n",
- "x after call: 100\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.10, Page Number: 468<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "f=199.22\n",
- "\n",
- "i=f\n",
- "print i\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "199.22\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 19.11, Page Number: 469<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "i=0 #int\n",
- "p=\"This is a string\"\n",
- "\n",
- "i=p #cast pointer to integer \n",
- "\n",
- "#Result\n",
- "print i\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This is a string\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_2(1).ipynb b/C++_from_the_Ground/Chapter_2(1).ipynb
deleted file mode 100755
index b3976867..00000000
--- a/C++_from_the_Ground/Chapter_2(1).ipynb
+++ /dev/null
@@ -1,416 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:05876b24f412fcea817693bad944dc90f3dae4fb5142aeb7d9c2c98569067083"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 2: An Overview of C++<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.1, Page Number: 12<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "print \"This is my first C++ program.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This is my first C++ program.\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.2, Page Number: 17<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "x=None \n",
- "\n",
- "x=1023 #this assigns 1023 to x\n",
- "\n",
- "#Result\n",
- "print \"This program prints the value of x: \",x #prints x,i.e, 1023\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This program prints the value of x: 1023\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.3, Page Number: 18<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "gallons=10 #User input\n",
- "liters=None\n",
- "\n",
- "liters=gallons*4 #convert to liters\n",
- "\n",
- "#Result\n",
- "print \"Liters: \",liters"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Liters: 40\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.4, Page Number: 20<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "#Variable declaration\n",
- "gallons=10.20 #User input\n",
- "liters=None\n",
- "\n",
- "liters=gallons*3.7854 #convert to liters\n",
- "\n",
- "#Result\n",
- "print \"Liters: \",liters"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Liters: 38.61108\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.5, Page Number: 21<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def myfunc():\n",
- " print \"Inside myfunc() \"\n",
- " \n",
- "print \"In main()\"\n",
- "myfunc() #call myfunc()\n",
- "print \"Back in main()\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "In main()\n",
- "Inside myfunc() \n",
- "Back in main()\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.6, Page Number: 22<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "print abs(-10)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.7, Page Number: 23<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def mul(x,y):\n",
- " print x*y,\n",
- "\n",
- "#calling mul\n",
- "mul(10,20)\n",
- "mul(5,6)\n",
- "mul(8,9)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "200 30 72\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.8, Page Number: 24<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def mul(x,y):\n",
- " return x*y #return product of x and y\n",
- "\n",
- "#Variable declaration\n",
- "answer=mul(10,11) #assign return values\n",
- "\n",
- "#Result\n",
- "print \"The answer is: \",answer\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The answer is: 110\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.9, Page Number: 26<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "print \"one\"\n",
- "print \"two\" #prints in different line\n",
- "print \"three\",\"four\" #prints all in same line"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "one\n",
- "two\n",
- "three four\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.10, Page Number: 27<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "#Variable declaration\n",
- "a=10 #user input for two numbers\n",
- "b=20\n",
- "\n",
- "#Result\n",
- "if a<b:\n",
- " print \"First number is less than second. \""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "First number is less than second. \n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.11, Page Number: 28<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for count in range(1,100+1):\n",
- " print count,"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 2.12, Page Number: 30<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "a=10 #User input for two numbers\n",
- "b=20\n",
- "\n",
- "#Result\n",
- "if a<b:\n",
- " print \"First number is less than second\"\n",
- " print \"Their difference is: \",b-a\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "First number is less than second\n",
- "Their difference is: 10\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_20(2).ipynb b/C++_from_the_Ground/Chapter_20(2).ipynb
deleted file mode 100755
index 8771c6cd..00000000
--- a/C++_from_the_Ground/Chapter_20(2).ipynb
+++ /dev/null
@@ -1,937 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:aed4cbb1750b5cf45152f9d0ded2a9f36978f3177285c38b159fb79a8b0d35e4"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 20: Namespaces and Other Advanced Topics<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.1, Page Number:474<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "class CounterNameSpace:\n",
- " upperbound=None\n",
- " lowerbound=None\n",
- " class counter:\n",
- " def __init__(self,n):\n",
- " if n<=CounterNameSpace.upperbound:\n",
- " self.count=n\n",
- " else:\n",
- " self.count=CounterNameSpace.upperbound\n",
- " def reset(self,n):\n",
- " if n<=CounterNameSpace.upperbound:\n",
- " self.count=n\n",
- " def run(self):\n",
- " if self.count>CounterNameSpace.lowerbound:\n",
- " self.count-=1\n",
- " return self.count\n",
- " else:\n",
- " return CounterNameSpace.lowerbound\n",
- " \n",
- "CounterNameSpace.upperbound=100\n",
- "CounterNameSpace.lowerbound=0\n",
- "\n",
- "\n",
- "ob1=CounterNameSpace.counter(10)\n",
- "while True:\n",
- " i=ob1.run()\n",
- " print i,\n",
- " if i<=CounterNameSpace.lowerbound:\n",
- " break \n",
- "print\n",
- "\n",
- "\n",
- "ob2=CounterNameSpace.counter(20)\n",
- "while True:\n",
- " i=ob2.run()\n",
- " print i,\n",
- " if i<=CounterNameSpace.lowerbound:\n",
- " break \n",
- "print\n",
- "\n",
- "\n",
- "ob2.reset(100)\n",
- "CounterNameSpace.lowerbound=90\n",
- "while True:\n",
- " i=ob2.run()\n",
- " print i,\n",
- " if i<=CounterNameSpace.lowerbound:\n",
- " break "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "9 8 7 6 5 4 3 2 1 0\n",
- "19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0\n",
- "99 98 97 96 95 94 93 92 91 90\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.2, Page Number:476<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "class CounterNameSpace:\n",
- " upperbound=None\n",
- " lowerbound=None\n",
- " class counter:\n",
- " def __init__(self,n):\n",
- " if n<=c.upperbound:\n",
- " self.count=n\n",
- " else:\n",
- " self.count=c.upperbound\n",
- " def reset(self,n):\n",
- " if n<=c.upperbound:\n",
- " self.count=n\n",
- " def run(self):\n",
- " if self.count>c.lowerbound:\n",
- " self.count-=1\n",
- " return self.count\n",
- " else:\n",
- " return c.lowerbound\n",
- "\n",
- "#Use only upperbound using c\n",
- "c=CounterNameSpace()\n",
- "c.upperbound=100\n",
- "CounterNameSpace.lowerbound=0\n",
- "\n",
- "\n",
- "ob1=CounterNameSpace.counter(10)\n",
- "while True:\n",
- " i=ob1.run()\n",
- " print i,\n",
- " if i<=CounterNameSpace.lowerbound:\n",
- " break \n",
- "print\n",
- "\n",
- "#Now use entre CounterName Space using c\n",
- "\n",
- "ob2=c.counter(20)\n",
- "while True:\n",
- " i=ob2.run()\n",
- " print i,\n",
- " if i<=c.lowerbound:\n",
- " break \n",
- "print\n",
- "\n",
- "\n",
- "ob2.reset(100)\n",
- "c.lowerbound=90\n",
- "while True:\n",
- " i=ob2.run()\n",
- " print i,\n",
- " if i<=c.lowerbound:\n",
- " break "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "9 8 7 6 5 4 3 2 1 0\n",
- "19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0\n",
- "99 98 97 96 95 94 93 92 91 90\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.3, Page Number:479<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#User-input\n",
- "print \"Enter a number:\"\n",
- "val= 10.00\n",
- "\n",
- "#Result\n",
- "print \"This is your number:\",val"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a number:\n",
- "This is your number: 10.0\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.4, Page Number:479<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import sys\n",
- "\n",
- "#User-input\n",
- "sys.stdout.write(\"Enter a number:\")\n",
- "val= 10.00\n",
- "\n",
- "#Result\n",
- "sys.stdout.write(\"\\nThis is your number: \")\n",
- "sys.stdout.write(str(val))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a number:\n",
- "This is your number: 10.0"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.5, Page Number:479<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from sys import stdout\n",
- "\n",
- "#User-input\n",
- "stdout.write(\"Enter a number:\")\n",
- "val= 10.00\n",
- "\n",
- "#Result\n",
- "stdout.write(\"\\nThis is your number: \")\n",
- "stdout.write(str(val))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a number:\n",
- "This is your number: 10.0"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.6, Page Number:480<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def vline(i):\n",
- " for j in xrange(i,0,-1):\n",
- " print \"|\"\n",
- "def hline(i):\n",
- " for j in xrange(i,0,-1):\n",
- " print \"-\",\n",
- " print \n",
- "\n",
- "p=vline #p points to vline\n",
- "p(4) #call vline()\n",
- "\n",
- "p=hline #p now points to hline\n",
- "p(3) #call hline"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "|\n",
- "|\n",
- "|\n",
- "|\n",
- "- - -\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.7, Page Number:482<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import string\n",
- "\n",
- "def qsort(p):\n",
- " if p == []: \n",
- " return []\n",
- " else:\n",
- " pivot = p[0]\n",
- " lesser = qsort([x for x in p[1:] if x < pivot])\n",
- " greater = qsort([x for x in p[1:] if x >= pivot])\n",
- " return lesser + [pivot] + greater\n",
- " \n",
- "#Variable Declaration \n",
- "str=\"Function pointers provide flexibility.\" \n",
- "\n",
- "#sorting the string\n",
- "str=qsort(str)\n",
- "str=string.join(str)\n",
- "\n",
- "#Result\n",
- "print \"sorted strng: \",str\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "sorted strng: . F b c d e e e f i i i i i i l l n n n o o o p p r r s t t t u v x y\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.8, Page Number:482<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "def qsort(p):\n",
- " \"\"\"Quicksort using list comprehensions\"\"\"\n",
- " if p == []: \n",
- " return []\n",
- " else:\n",
- " pivot = p[0]\n",
- " lesser = qsort([x for x in p[1:] if x < pivot])\n",
- " greater = qsort([x for x in p[1:] if x >= pivot])\n",
- " return lesser + [pivot] + greater\n",
- " \n",
- "#Variable Declaration \n",
- "num=[10,4,3,6,5,7,8]\n",
- "\n",
- "#sorting the string\n",
- "num=qsort(num)\n",
- "\n",
- "#Result\n",
- "for i in range(7):\n",
- " print num[i],\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "3 4 5 6 7 8 10\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.9, Page Number:484<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def space(count,ch=None):\n",
- " if ch==None:\n",
- " for i in xrange(count,0,-1):\n",
- " print '',\n",
- " else:\n",
- " for i in xrange(count,0,-1):\n",
- " print ch,\n",
- " \n",
- "\n",
- "fp1=space\n",
- "fp2=space\n",
- "\n",
- "fp1(22) #outputs 20 spaces\n",
- "print \"|\\n\" \n",
- "\n",
- "fp2(30,'x') #output 30 xs \n",
- "print \"|\\n\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- " |\n",
- "\n",
- "x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x |\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.10, Page Number:485<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "num=None #static variable\n",
- "\n",
- "class ShareVar:\n",
- " def setnum(i=0):\n",
- " global num\n",
- " num=i\n",
- " def shownum(self):\n",
- " global num\n",
- " print num\n",
- " \n",
- "#Variables declaration\n",
- "a=ShareVar()\n",
- "b=ShareVar()\n",
- "\n",
- "a.shownum() #prints None\n",
- "b.shownum() #prints None\n",
- "\n",
- "num=10 #set static num to 10\n",
- "\n",
- "a.shownum() #prints 10\n",
- "b.shownum() #prints 10\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "None\n",
- "None\n",
- "10\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.11, Page Number:487<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class Demo:\n",
- " i=None\n",
- " j=None\n",
- " def geti(self):\n",
- " return self.i\n",
- " def seti(self,x):\n",
- " self.i=x\n",
- " \n",
- "ob=Demo()\n",
- "\n",
- "ob.seti(1900)\n",
- "print ob.geti()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1900\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.12, Page Number:488<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,x):\n",
- " self.__a=x\n",
- " def geta(self):\n",
- " return self.__a\n",
- " \n",
- "#Variable declaration\n",
- "ob=myclass(4)\n",
- "\n",
- "#Result\n",
- "print ob.geta()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "4\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.13, Page Number:489<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class myclass:\n",
- " def __init__(self,x):\n",
- " self.__a=x\n",
- " def geta():\n",
- " return self.__a\n",
- " \n",
- "ob = myclass(110)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.14, Page Number:490<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,i):\n",
- " self.__num=i\n",
- " def getnum(self):\n",
- " return self.__num\n",
- " \n",
- "#Variable declaration\n",
- "o=myclass(10)\n",
- "\n",
- "print o.getnum() #display 10\n",
- "\n",
- "o=myclass(1000)\n",
- "\n",
- "print o.getnum() #display 1000"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n",
- "1000\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.15, Page Number:491<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,x,y):\n",
- " self.__numA=x\n",
- " self.__numB=y\n",
- " def getnumA(self):\n",
- " return self.__numA\n",
- " def getnumB(self):\n",
- " return self.__numB\n",
- " \n",
- "#Variable declaration\n",
- "ob1=myclass(7,9)\n",
- "ob2=myclass(5,2)\n",
- "\n",
- "#Result\n",
- "print \"Values in ob1 are \",ob1.getnumB(),\"and\",ob1.getnumA()\n",
- "print \"Values in ob2 are \",ob2.getnumB(),\"and\",ob2.getnumA()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Values in ob1 are 9 and 7\n",
- "Values in ob2 are 2 and 5\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.16, Page Number:492<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,x,y):\n",
- " self.__numA=x\n",
- " self.__numB=y\n",
- " def getnumA(self):\n",
- " return self.__numA\n",
- " def getnumB(self):\n",
- " return self.__numB\n",
- " \n",
- "#Variable declaration\n",
- "ob1=myclass(7,9)\n",
- "ob2=myclass(5,2)\n",
- "\n",
- "#Result\n",
- "print \"Values in ob1 are \",ob1.getnumB(),\"and\",ob1.getnumA()\n",
- "print \"Values in ob2 are \",ob2.getnumB(),\"and\",ob2.getnumA()\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Values in ob1 are 9 and 7\n",
- "Values in ob2 are 2 and 5\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.17, Page Number:494<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def myfunc():\n",
- " print \"This links as a C function.\"\n",
- " \n",
- "myfunc()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This links as a C function.\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.18, Page Number:495<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "class myclass: \n",
- " sum=c_int(0)\n",
- " def sum_it(self,x):\n",
- " for i in range(x+1):\n",
- " self.sum.value+=i\n",
- " fp=sum_it #pointer to function\n",
- "\n",
- "#Variable declaration\n",
- "c=myclass()\n",
- "fp=myclass.sum_it #get address of function\n",
- "dp=pointer(c.sum) #address of data\n",
- "c.fp(7) #compute summation of 7\n",
- "\n",
- "\n",
- "#Result\n",
- "print \"summation of 7 is\",dp[0]\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "summation of 7 is 28\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.19, Page Number:496<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "class myclass:\n",
- " sum=c_int(0)\n",
- " def sum_it(self,x): \n",
- " for i in range(x+1):\n",
- " self.sum.value+=i\n",
- " fp=sum_it #pointer to function\n",
- "\n",
- "#Variable declaration\n",
- "d=myclass()\n",
- "c=[d] #ponter to object\n",
- "fp=myclass.sum_it #get address of function\n",
- "dp=pointer(c[0].sum) #get address of data\n",
- "\n",
- "c[0].fp(7) #compute summation of 7\n",
- "\n",
- "\n",
- "#Result\n",
- "print \"summation of 7 is\",dp[0]\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- " summation of 7 is 28\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 20.20, Page Number:497<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "class three_d:\n",
- " def __init__(self,a,b,c): #3D coordinates\n",
- " self.x=a\n",
- " self.y=b\n",
- " self.z=c\n",
- " #Display x,y,z coordinates - three_d inserter.\n",
- " def __repr__(self):\n",
- " return str(self.x)+\", \"+str(self.y)+\", \"+str(self.z)+\"\\n\"\n",
- " def __add__(self,op2):\n",
- " if isinstance(op2,int):\n",
- " c=self.x*self.y*self.z+op2\n",
- " return c\n",
- " temp=three_d(self.x+op2.x,self.y+op2.y,self.z+op2.z)\n",
- " return temp\n",
- " \n",
- "a=three_d(1,2,3)\n",
- "b=three_d(2,3,4)\n",
- "\n",
- "print a,b,\n",
- "\n",
- "print b+100 #displays 124 because of conversion to int\n",
- "\n",
- "a=a+b #add two three_d objects - no conversion\n",
- "\n",
- "print a #displays 3,5,7"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1, 2, 3\n",
- " 2, 3, 4\n",
- " 124\n",
- "3, 5, 7\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_21(1).ipynb b/C++_from_the_Ground/Chapter_21(1).ipynb
deleted file mode 100755
index 76345922..00000000
--- a/C++_from_the_Ground/Chapter_21(1).ipynb
+++ /dev/null
@@ -1,1187 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:1f6065242a1ea235eb4712b9ec147fb29625df8861301b52ad6c880a94467811"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 21: Introducing the Standard Template Library<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.1, Page Number:507<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "v=[] #Create a zero length vector\n",
- " \n",
- "print \"Size =\",len(v)\n",
- " \n",
- "\n",
- "for i in range(10):\n",
- " v.append(i)\n",
- " \n",
- "#display current size of v\n",
- "print \"Current contents: \"\n",
- "print \"Size now =\",len(v)\n",
- "\n",
- "#display contents of vector\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- " \n",
- "print\n",
- " \n",
- "#put more values onto end of vector\n",
- "#again, vector will grow as needed.\n",
- "for i in range(10):\n",
- " v.append(i+10)\n",
- "#display current size of v\n",
- "print \"Size now =\",len(v)\n",
- "\n",
- "#display contents of vector\n",
- "print \"Current contents:\"\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print\n",
- " \n",
- "#change contents of vector\n",
- "for i in range(len(v)):\n",
- " v[i]=v[i]+v[i]\n",
- " \n",
- "#display contents of vector\n",
- "print \"Contents doubled:\"\n",
- "for i in range(len(v)):\n",
- " print v[i],"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Size = 0\n",
- "Current contents: \n",
- "Size now = 10\n",
- "0 1 2 3 4 5 6 7 8 9\n",
- "Size now = 20\n",
- "Current contents:\n",
- "0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19\n",
- "Contents doubled:\n",
- "0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.2, Page Number:508<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "v=[] #Create a zero length vector\n",
- "\n",
- "#put values onto end of vector\n",
- "for i in range(10):\n",
- " v.append(chr(ord('A')+i))\n",
- " \n",
- "#can access vector contents using subscripts\n",
- "for i in range(len(v)):\n",
- " print v[i], \n",
- "print\n",
- " \n",
- "#access via iterator\n",
- "for p in v:\n",
- " print p,\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "A B C D E F G H I J\n",
- "A B C D E F G H I J\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.3, Page Number:509<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "v=[] #Create a zero length vector\n",
- "\n",
- "#put values onto end of vector\n",
- "for i in range(10):\n",
- " v.append(chr(ord('A')+i))\n",
- " \n",
- "#Display original contents of vector\n",
- "print \"Size =\",len(v)\n",
- "print \"Original contents:\"\n",
- "for i in range(len(v)):\n",
- " print v[i], \n",
- "print \"\\n\"\n",
- " \n",
- "p=2 #point to 3rd element\n",
- "for i in range(10):\n",
- " v.insert(p+i,'X')\n",
- " \n",
- "#display contents after insertion\n",
- "print \"Size after insert =\",len(v)\n",
- "print \"Contents after insert:\"\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print \"\\n\"\n",
- "\n",
- "#remove those elements\n",
- "p=2 #point to 3rd element\n",
- "for i in range(10):\n",
- " v.pop(p)\n",
- " \n",
- "#display contents after insertion\n",
- "print \"Size after erase =\",len(v)\n",
- "print \"Contents after insert:\"\n",
- "for i in range(len(v)):\n",
- " print v[i],\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Size = 10\n",
- "Original contents:\n",
- "A B C D E F G H I J \n",
- "\n",
- "Size after insert = 20\n",
- "Contents after insert:\n",
- "A B X X X X X X X X X X C D E F G H I J \n",
- "\n",
- "Size after erase = 10\n",
- "Contents after insert:\n",
- "A B C D E F G H I J\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.4, Page Number:511<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class three_d:\n",
- " def __init__(self,a,b,c): #3D coordinates\n",
- " self.x=a\n",
- " self.y=b\n",
- " self.z=c\n",
- " #Display x,y,z coordinates - three_d inserter.\n",
- " def __repr__(self):\n",
- " return str(self.x)+\", \"+str(self.y)+\", \"+str(self.z)+\"\\n\"\n",
- " def __add__(self,a):\n",
- " self.x+=a\n",
- " self.y+=a\n",
- " self.z+=a\n",
- " return self\n",
- " def __lt__(self,b):\n",
- " return (self.x+self.y+self.z)<(b.x+b.y+b.z)\n",
- " def __eq__(self,b):\n",
- " return (self.x+self.y+self.z)==(b.x+b.y+b.z) \n",
- " \n",
- "#Variable declaration\n",
- "v=[]\n",
- "\n",
- "#add objects to the vector\n",
- "for i in range(10):\n",
- " v.append(three_d(i,i+2,i-3))\n",
- " \n",
- "#Display contents of vector\n",
- "for i in range(len(v)):\n",
- " print v[i], \n",
- "print\n",
- "\n",
- "\n",
- "#Modify objects in a vector\n",
- "for i in range(len(v)):\n",
- " v[i]=v[i]+10 \n",
- "\n",
- "#Display modified vector\n",
- "for i in range(len(v)):\n",
- " print v[i], \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0, 2, -3\n",
- " 1, 3, -2\n",
- " 2, 4, -1\n",
- " 3, 5, 0\n",
- " 4, 6, 1\n",
- " 5, 7, 2\n",
- " 6, 8, 3\n",
- " 7, 9, 4\n",
- " 8, 10, 5\n",
- " 9, 11, 6\n",
- "\n",
- "10, 12, 7\n",
- " 11, 13, 8\n",
- " 12, 14, 9\n",
- " 13, 15, 10\n",
- " 14, 16, 11\n",
- " 15, 17, 12\n",
- " 16, 18, 13\n",
- " 17, 19, 14\n",
- " 18, 20, 15\n",
- " 19, 21, 16\n",
- "\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.5, Page Number:513<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "v=[]\n",
- "v2=[]\n",
- "\n",
- "for i in range(10):\n",
- " v.append(chr(ord('A')+i))\n",
- " \n",
- "#Display original contents of vector\n",
- "print \"Size =\",len(v)\n",
- "print \"Original contents:\"\n",
- "for i in range(len(v)):\n",
- " print v[i], \n",
- "print \"\\n\"\n",
- "\n",
- "#initialze second vector\n",
- "str=\"-STL Power-\"\n",
- "for i in range(len(str)):\n",
- " v2.append(str[i])\n",
- " \n",
- "#get iterators to the middle of v and to the start and end of v2.\n",
- "p=5\n",
- "p2start=0\n",
- "p2end=len(v2)-1\n",
- "\n",
- "#insert v2 into v\n",
- "for i in range(p2end):\n",
- " v.insert(p+i,v2[p2start+i])\n",
- " \n",
- "#display result\n",
- "print \"Contents of v after inserton:\"\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Size = 10\n",
- "Original contents:\n",
- "A B C D E F G H I J \n",
- "\n",
- "Contents of v after inserton:\n",
- "A B C D E - S T L P o w e r F G H I J\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.6, Page Number:517<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "lst=[] #create an empty list\n",
- "\n",
- "for i in range(10):\n",
- " lst.append(chr(ord('A')+i))\n",
- " \n",
- "print \"Size =\",len(lst)\n",
- "\n",
- "print \"Contents:\",\n",
- "for p in lst:\n",
- " print p, \n",
- "print \"\\n\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Size = 10\n",
- "Contents: A B C D E F G H I J \n",
- "\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.7, Page Number:518<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "lst=[] \n",
- "revlst=[]\n",
- "\n",
- "for i in range(10):\n",
- " lst.append(chr(ord('A')+i))\n",
- " \n",
- "print \"Size of list =\",len(lst)\n",
- "\n",
- "print \"Original Contents:\",\n",
- "#Remove elements from lst and put them into revlst in reverse order.\n",
- "for p in lst:\n",
- " print p, \n",
- " revlst.insert(0,p) \n",
- "for i in range(10):\n",
- " lst.pop(0)\n",
- "print \"\\n\"\n",
- "\n",
- "print \"Size of revlst =\",len(revlst)\n",
- "\n",
- "print \"Reversed Contents:\",\n",
- "for p in revlst:\n",
- " print p,"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Size of list = 10\n",
- "Original Contents: A B C D E F G H I J \n",
- "\n",
- "Size of revlst = 10\n",
- "Reversed Contents: J I H G F E D C B A\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.8, Page Number:519<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable declaration\n",
- "lst=[] \n",
- "\n",
- "#create a list of random integers\n",
- "for i in range(10):\n",
- " lst.append(random.randint(0,100))\n",
- "\n",
- "print \"Original Contents:\",\n",
- "for p in lst:\n",
- " print p, \n",
- "print \"\\n\"\n",
- "\n",
- "#sort the list\n",
- "lst.sort()\n",
- "\n",
- "print \"Sorted Contents:\",\n",
- "for p in lst:\n",
- " print p,"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original Contents: 75 73 72 4 88 7 85 21 67 42 \n",
- "\n",
- "Sorted Contents: 4 7 21 42 67 72 73 75 85 88\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.9, Page Number:520<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "lst1=[] \n",
- "lst2=[]\n",
- "\n",
- "for i in xrange(0,10,2):\n",
- " lst1.append(chr(ord('A')+i))\n",
- "for i in xrange(1,11,2):\n",
- " lst2.append(chr(ord('A')+i))\n",
- "\n",
- "print \"Contents of lst1:\",\n",
- "for p in lst1:\n",
- " print p, \n",
- "print \"\\n\"\n",
- "\n",
- "print \"Contents of lst2:\",\n",
- "for p in lst2:\n",
- " print p, \n",
- "print \"\\n\"\n",
- "\n",
- "#merge the lists\n",
- "lst1=lst1+lst2\n",
- "lst1.sort()\n",
- "lst2=[]\n",
- "\n",
- "if lst2==[]:\n",
- " print \"lst2 is now empty\"\n",
- "\n",
- "print \"Contentsof lst1 after merge:\"\n",
- "for p in lst1:\n",
- " print p,"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Contents of lst1: A C E G I \n",
- "\n",
- "Contents of lst2: B D F H J \n",
- "\n",
- "lst2 is now empty\n",
- "Contentsof lst1 after merge:\n",
- "A B C D E F G H I J\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.10, Page Number:521<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "class myclass:\n",
- " def __init__(self,i=0,j=0):\n",
- " self.__a=i\n",
- " self.__b=j\n",
- " self.sum=self.__a+self.__b\n",
- " def getsum(self):\n",
- " return self.sum\n",
- " def __lt__(self,o2):\n",
- " return self.sum<o2.sum\n",
- " def __gt__(self,o2):\n",
- " return self.sum>o2.sum\n",
- " def __eq__(self,o2):\n",
- " return self.sum==o2.sum\n",
- " def __ne__(self, other):\n",
- " return not self.__eq__(self)\n",
- " \n",
- "#create first list\n",
- "lst1=[]\n",
- "for i in range(10):\n",
- " lst1.append(myclass(i,i))\n",
- " \n",
- "print \"First list:\",\n",
- "for p in lst1:\n",
- " print p.getsum(),\n",
- "print\n",
- "\n",
- "#create second list\n",
- "lst2=[]\n",
- "for i in range(10):\n",
- " lst2.append(myclass(i*2,i*3))\n",
- " \n",
- "print \"First list:\",\n",
- "for p in lst2:\n",
- " print p.getsum(),\n",
- "print\n",
- " \n",
- "#Now merge list\n",
- "lst1=lst1+lst2\n",
- "lst1.sort()\n",
- "\n",
- "#Display merge list\n",
- "print \"Merged list:\",\n",
- "for p in lst1:\n",
- " print p.getsum(),\n",
- "print"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "First list: 0 2 4 6 8 10 12 14 16 18\n",
- "First list: 0 5 10 15 20 25 30 35 40 45\n",
- "Merged list: 0 0 2 4 5 6 8 10 10 12 14 15 16 18 20 25 30 35 40 45\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.11, Page Number:527<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "m=[] \n",
- "\n",
- "#define the function find\n",
- "def find(x,ch):\n",
- " for p in x:\n",
- " if p[0]==ch:\n",
- " return p\n",
- " return -1\n",
- "\n",
- "#put pairs into map\n",
- "for i in range(10):\n",
- " m.append([chr(ord('A')+i),i])\n",
- " \n",
- "#User Input\n",
- "ch='D'\n",
- "\n",
- "#find value of the given key\n",
- "p=find(m,ch)\n",
- "\n",
- "if not(p==-1):\n",
- " print p[1]\n",
- "else:\n",
- " print \"Key not in the map\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "3\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.12, Page Number:528<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def find(x,ch):\n",
- " for p in x:\n",
- " if p[0].get()==ch.get():\n",
- " return p\n",
- " return -1\n",
- "\n",
- "\n",
- "class word:\n",
- " def __init__(self,s=\"\"):\n",
- " self.str=s\n",
- " def get(self):\n",
- " return self.str\n",
- " #must define less than relative to word objects\n",
- " def __lt__(self,b):\n",
- " return self.str<b.str\n",
- "\n",
- "class meaning:\n",
- " def __init__(self,s=\"\"):\n",
- " self.str=s\n",
- " def get(self):\n",
- " return self.str\n",
- "\n",
- "dictionary=[]\n",
- "\n",
- "dictionary.append([word(\"house\"),meaning(\"A place of dwelling\")])\n",
- "dictionary.append([word(\"keyboard\"),meaning(\"An input device\")])\n",
- "dictionary.append([word(\"programming\"),meaning(\"The act of writing a program\")])\n",
- "dictionary.append([word(\"STL\"),meaning(\"Standard Template Library\")])\n",
- "\n",
- "#given a word, find meaning\n",
- "print \"Enter word:\"\n",
- "str=\"house\" #User input\n",
- "\n",
- "p=find(dictionary,word(str))\n",
- "\n",
- "if not(p==-1):\n",
- " print \"Definition:\",p[1].get()\n",
- "else:\n",
- " print \"Word not in the dictionary.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter word:\n",
- "Definition: A place of dwelling\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.13, Page Number:532<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "def isvowel(ch):\n",
- " ch=ch.lower()\n",
- " if (ch=='a' or ch=='e'or ch=='i' or ch=='o' or ch=='u'):\n",
- " return 1\n",
- " else:\n",
- " return 0\n",
- "\n",
- "str=\"STL programming is powerful.\"\n",
- "v=[]\n",
- "\n",
- "for i in range(len(str)):\n",
- " v.append(str[i])\n",
- " \n",
- "print \"Sequence:\",\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print\n",
- "\n",
- "n=str.count('p')\n",
- "print n,\"characters are p\"\n",
- "\n",
- "#count if vowel\n",
- "n=0\n",
- "for i in v:\n",
- " if isvowel(i):\n",
- " n+=1\n",
- " \n",
- "print n,\"characters are vowels.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Sequence: S T L p r o g r a m m i n g i s p o w e r f u l .\n",
- "2 characters are p\n",
- "7 characters are vowels.\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.14, Page Number:534<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "str=\"This is a test\"\n",
- "v=[]\n",
- "v2=[]\n",
- "\n",
- "for i in range(len(str)):\n",
- " v.append(str[i])\n",
- " \n",
- "# ***implement remove_copy***\n",
- "print \"Input sequence:\",\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print \n",
- "\n",
- "#Remove all i's\n",
- "v2 = str.replace(\"i\", \"\")\n",
- "\n",
- "print \"Result after removing i's: \",\n",
- "print v2,\"\\n\"\n",
- "\n",
- "\n",
- "# ***implement replace_copy***\n",
- "print \"Input sequence:\",\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print \n",
- "\n",
- "#Replace s's with X's\n",
- "v2 = str.replace(\"s\", \"X\")\n",
- "\n",
- "print \"Result after replacning s's with X's: \",\n",
- "print v2"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Input sequence: T h i s i s a t e s t\n",
- "Result after removing i's: Ths s a test \n",
- "\n",
- "Input sequence: T h i s i s a t e s t\n",
- "Result after replacning s's with X's: ThiX iX a teXt\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.15, Page Number:535<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "v=[]\n",
- "\n",
- "for i in range(10):\n",
- " v.append(i)\n",
- " \n",
- "print \"Initial:\",\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print\n",
- "\n",
- "#Reversing the list\n",
- "v.reverse()\n",
- "\n",
- "print \"Reversed:\",\n",
- "for i in range(len(v)):\n",
- " print v[i],\n",
- "print \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Initial: 0 1 2 3 4 5 6 7 8 9\n",
- "Reversed: 9 8 7 6 5 4 3 2 1 0\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.16, Page Number:536<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def xform(i):\n",
- " return i*i #square original value\n",
- "\n",
- "#the transorm function\n",
- "def transform(x,f):\n",
- " for i in range(len(x)):\n",
- " x[i]= f(x[i])\n",
- " \n",
- "#Variable declaration\n",
- "x1=[]\n",
- "\n",
- "#put values into list\n",
- "for i in range(10):\n",
- " x1.append(i)\n",
- "\n",
- "print \"Original contents of x1: \",\n",
- "for p in x1:\n",
- " print p,\n",
- "print \n",
- "\n",
- "#transform x1\n",
- "p=transform(x1,xform)\n",
- "\n",
- "print \"Transformed contents of x1:\",\n",
- "for p in x1:\n",
- " print p,"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original contents of x1: 0 1 2 3 4 5 6 7 8 9\n",
- "Transformed contents of x1: 0 1 4 9 16 25 36 49 64 81\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.17, Page Number:540<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "str1=\"The string class gives \"\n",
- "str2=\"C++ high strng handlng.\"\n",
- "\n",
- "#assign a string\n",
- "str3=str1\n",
- "print str1,\"\\n\",str3\n",
- "\n",
- "#Concatenate two strings\n",
- "str3=str1+str2\n",
- "print str3\n",
- "\n",
- "#Compare strings\n",
- "if str3>str1:\n",
- " print \"str3 > str1\"\n",
- "if str3==str1+str2:\n",
- " print \"str3 == str1+str2\"\n",
- " \n",
- "str1=\"This is a null-terminated string.\"\n",
- "print str1\n",
- "\n",
- "#create a string object using another string object\n",
- "str4=str1\n",
- "print str4\n",
- "\n",
- "#nput a string\n",
- "print \"Enter a string:\"\n",
- "str4=\"Hello\"\n",
- "print str4"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The string class gives \n",
- "The string class gives \n",
- "The string class gives C++ high strng handlng.\n",
- "str3 > str1\n",
- "str3 == str1+str2\n",
- "This is a null-terminated string.\n",
- "This is a null-terminated string.\n",
- "Enter a string:\n",
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 19
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.18, Page Number:542<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "str1=\"This is a test\"\n",
- "str2=\"ABCDEFG\"\n",
- "\n",
- "print \"Initial strings:\"\n",
- "print \"str1:\",str1\n",
- "print \"str2:\",str2\n",
- "print\n",
- "\n",
- "#demonstrate insert\n",
- "print \"Insert str2 into str1:\"\n",
- "str1=str1[:5]+str2+str1[5:]\n",
- "print str1,\"\\n\"\n",
- "\n",
- "#demonstrate erase\n",
- "print \"Remove 7 charecters from str1:\"\n",
- "str1=str[:5]+str[5:]\n",
- "print str1,\"\\n\"\n",
- "\n",
- "#demonstrate replace\n",
- "print \"Replace 2 characters in str1 with str2:\"\n",
- "str1=str1[:5]+str2+str1[7:]\n",
- "print str1\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Initial strings:\n",
- "str1: This is a test\n",
- "str2: ABCDEFG\n",
- "\n",
- "Insert str2 into str1:\n",
- "This ABCDEFGis a test \n",
- "\n",
- "Remove 7 charecters from str1:\n",
- "This is a test \n",
- "\n",
- "Replace 2 characters in str1 with str2:\n",
- "This ABCDEFG a test\n"
- ]
- }
- ],
- "prompt_number": 21
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.19, Page Number:543<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "#Variable declaration \n",
- "s1=\"The string class makes string handling easy.\"\n",
- "\n",
- "i=string.find(s1,\"class\")\n",
- "if not(i==-1):\n",
- " print \"Match found at\",i\n",
- " print \"Remaining string is:\",\n",
- " s2=s1[i:]\n",
- " print s2"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Match found at 11\n",
- "Remaining string is: class makes string handling easy.\n"
- ]
- }
- ],
- "prompt_number": 22
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 21.20, Page Number:545<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def find(x,ch):\n",
- " for p in x:\n",
- " if p[0]==ch:\n",
- " return p\n",
- " return -1\n",
- "\n",
- "\n",
- "dictionary=[]\n",
- "\n",
- "dictionary.append([\"house\",\"A place of dwelling\"])\n",
- "dictionary.append([\"keyboard\",\"An input device\"])\n",
- "dictionary.append([\"programming\",\"The act of writing a program\"])\n",
- "dictionary.append([\"STL\",\"Standard Template Library\"])\n",
- "\n",
- "#given a word, find meaning\n",
- "print \"Enter word:\"\n",
- "str=\"house\" #User input\n",
- "\n",
- "p=find(dictionary,str)\n",
- "\n",
- "if not(p==-1):\n",
- " print \"Definition:\",p[1]\n",
- "else:\n",
- " print \"Word not in the dictionary.\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter word:\n",
- "Definition: A place of dwelling\n"
- ]
- }
- ],
- "prompt_number": 23
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_22(1).ipynb b/C++_from_the_Ground/Chapter_22(1).ipynb
deleted file mode 100755
index 39b8cb88..00000000
--- a/C++_from_the_Ground/Chapter_22(1).ipynb
+++ /dev/null
@@ -1,347 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:2d1838d005f866ea4e20c93ff6de54ebfd0d0c26c2e3055fc05467a06502c1dc"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 22: The C++ Preprocessor<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.1, Page Number: 550<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def MIN(a,b):\n",
- " if a<b:\n",
- " return a\n",
- " else:\n",
- " return b\n",
- "\n",
- "#Variable declaration\n",
- "x=10\n",
- "y=20\n",
- "\n",
- "#Result\n",
- "print \"The minimum is\",MIN(x,y)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The minimum is 10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.2, Page Number: 551<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def EVEN(a):\n",
- " if a%2==0:\n",
- " return 1\n",
- " else:\n",
- " return 0\n",
- "\n",
- "if EVEN(9+1):\n",
- " print \"is even\"\n",
- "else:\n",
- " print \"is odd\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "is even\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.3, Page Number: 551<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def EVEN(a):\n",
- " if a%2==0:\n",
- " return 1\n",
- " else:\n",
- " return 0\n",
- "\n",
- "if EVEN(9+1):\n",
- " print \"is even\"\n",
- "else:\n",
- " print \"is odd\""
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "is even\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.4, Page Number: 553<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def MAX():\n",
- " return 100\n",
- "\n",
- "if MAX()>10:\n",
- " print \"Extra memory required.\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Extra memory required.\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.5, Page Number: 554<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def MAX():\n",
- " return 6\n",
- "\n",
- "if MAX()>10:\n",
- " print \"Extra memory required.\"\n",
- "else:\n",
- " print \"Current memory OK.\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Current memory OK.\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.6, Page Number: 556<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def TOM():\n",
- " pass\n",
- "\n",
- "\n",
- "try:\n",
- " TOM()\n",
- "except NameError:\n",
- " print \"Programmer is unknown.\"\n",
- "else:\n",
- " print \"Programmer is Tom.\"\n",
- " \n",
- "try:\n",
- " RALPH()\n",
- "except NameError:\n",
- " print \"RALPH not defined.\"\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Programmer is Tom.\n",
- "RALPH not defined.\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.7, Page Number: 558<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import inspect\n",
- " \n",
- "def lineno():\n",
- " return inspect.currentframe().f_back.f_lineno\n",
- " \n",
- "print lineno()+200\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "209\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.8, Page Number: 559<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def mkstr(s):\n",
- " return str(s)\n",
- "\n",
- "#Result\n",
- "print mkstr('I like C++')\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "I like C++\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 22.9, Page Number: 560<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def concat(a,b):\n",
- " return a+b\n",
- "#Variable declaration\n",
- "xy=10\n",
- "\n",
- "#Result\n",
- "exec(\"print %s\")%concat('x','y')"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_3(1).ipynb b/C++_from_the_Ground/Chapter_3(1).ipynb
deleted file mode 100755
index 9d0cf326..00000000
--- a/C++_from_the_Ground/Chapter_3(1).ipynb
+++ /dev/null
@@ -1,473 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:13095677f4efa0909d9aeb25aa7b8b57bea864fd1d9a0a797f9e06000e52dc18"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 3: The Basic Data Types<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.1, Page Number: 35<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def func():\n",
- " x=-199 #local to func\n",
- " print x #displays -199 \n",
- " \n",
- "x=10 #local to main\n",
- "\n",
- "func()\n",
- "print x #displays 10\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "-199\n",
- "10\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.2, Page Number: 37<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def func1():\n",
- " global count\n",
- " print \"count: \",count #access global count\n",
- " func2()\n",
- "\n",
- "def func2():\n",
- " for count in range(3): #this is local variable\n",
- " print '.',\n",
- "\n",
- " \n",
- "count=None #global variables\n",
- "\n",
- "for i in range(10):\n",
- " count=i*2\n",
- " func1()\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "count: 0\n",
- ". . . count: 2\n",
- ". . . count: 4\n",
- ". . . count: 6\n",
- ". . . count: 8\n",
- ". . . count: 10\n",
- ". . . count: 12\n",
- ". . . count: 14\n",
- ". . . count: 16\n",
- ". . . count: 18\n",
- ". . .\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.3, Page Number: 40<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "j=c_uint(60000)\n",
- "i=c_int(60000)\n",
- "\n",
- "#Result\n",
- "print i.value,j.value"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "60000 60000\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.4, Page Number: 41<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for letter in xrange(ord('Z'),ord('A')-1,-1):\n",
- " print chr(letter),\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Z Y X W V U T S R Q P O N M L K J I H G F E D C B A\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.5, Page Number: 44<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "print \"\\n\\\\\\b\"\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n",
- "\\\b\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.6, Page Number: 45<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def total(x):\n",
- " sum=0\n",
- " for i in xrange(1,x+1):\n",
- " sum=sum+i\n",
- " for count in range(10):\n",
- " print '-',\n",
- " print \"The current sum is\",sum\n",
- " \n",
- "print \"Computing summation of 5.\"\n",
- "total(5)\n",
- "\n",
- "print \"Computing summation of 6.\"\n",
- "total(6)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Computing summation of 5.\n",
- "- - - - - - - - - - The current sum is 1\n",
- "- - - - - - - - - - The current sum is 3\n",
- "- - - - - - - - - - The current sum is 6\n",
- "- - - - - - - - - - The current sum is 10\n",
- "- - - - - - - - - - The current sum is 15\n",
- "Computing summation of 6.\n",
- "- - - - - - - - - - The current sum is 1\n",
- "- - - - - - - - - - The current sum is 3\n",
- "- - - - - - - - - - The current sum is 6\n",
- "- - - - - - - - - - The current sum is 10\n",
- "- - - - - - - - - - The current sum is 15\n",
- "- - - - - - - - - - The current sum is 21\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.7, Page Number: 47<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "x=10\n",
- "y=3\n",
- "\n",
- "print x/y #will display 3\n",
- "print x%y #will display1, the remainder\n",
- "\n",
- "x=1\n",
- "y=2\n",
- "\n",
- "#Result\n",
- "print x/y,x%y #will display 0 1"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "3\n",
- "1\n",
- "0 1\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.8, Page Number: 51<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def xor(a,b):\n",
- " return (a or b)and(not(a and b))\n",
- "\n",
- "#User-input\n",
- "print \"Enter P(0 or 1):\"\n",
- "p=1 \n",
- "print \"Enter Q(0 or 1):\"\n",
- "q=0\n",
- "\n",
- "#Result\n",
- "print \"P AND Q:\",(p and q)\n",
- "print \"P OR Q:\",(p or q)\n",
- "print \"P XOR Q:\",xor(p,q)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter P(0 or 1):\n",
- "Enter Q(0 or 1):\n",
- "P AND Q: 0\n",
- "P OR Q: 1\n",
- "P XOR Q: True\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 3.9, Page Number: 54<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for i in xrange(1,100+1):\n",
- " print i,\"/ 2 is:\",float(i)/2\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 / 2 is: 0.5\n",
- "2 / 2 is: 1.0\n",
- "3 / 2 is: 1.5\n",
- "4 / 2 is: 2.0\n",
- "5 / 2 is: 2.5\n",
- "6 / 2 is: 3.0\n",
- "7 / 2 is: 3.5\n",
- "8 / 2 is: 4.0\n",
- "9 / 2 is: 4.5\n",
- "10 / 2 is: 5.0\n",
- "11 / 2 is: 5.5\n",
- "12 / 2 is: 6.0\n",
- "13 / 2 is: 6.5\n",
- "14 / 2 is: 7.0\n",
- "15 / 2 is: 7.5\n",
- "16 / 2 is: 8.0\n",
- "17 / 2 is: 8.5\n",
- "18 / 2 is: 9.0\n",
- "19 / 2 is: 9.5\n",
- "20 / 2 is: 10.0\n",
- "21 / 2 is: 10.5\n",
- "22 / 2 is: 11.0\n",
- "23 / 2 is: 11.5\n",
- "24 / 2 is: 12.0\n",
- "25 / 2 is: 12.5\n",
- "26 / 2 is: 13.0\n",
- "27 / 2 is: 13.5\n",
- "28 / 2 is: 14.0\n",
- "29 / 2 is: 14.5\n",
- "30 / 2 is: 15.0\n",
- "31 / 2 is: 15.5\n",
- "32 / 2 is: 16.0\n",
- "33 / 2 is: 16.5\n",
- "34 / 2 is: 17.0\n",
- "35 / 2 is: 17.5\n",
- "36 / 2 is: 18.0\n",
- "37 / 2 is: 18.5\n",
- "38 / 2 is: 19.0\n",
- "39 / 2 is: 19.5\n",
- "40 / 2 is: 20.0\n",
- "41 / 2 is: 20.5\n",
- "42 / 2 is: 21.0\n",
- "43 / 2 is: 21.5\n",
- "44 / 2 is: 22.0\n",
- "45 / 2 is: 22.5\n",
- "46 / 2 is: 23.0\n",
- "47 / 2 is: 23.5\n",
- "48 / 2 is: 24.0\n",
- "49 / 2 is: 24.5\n",
- "50 / 2 is: 25.0\n",
- "51 / 2 is: 25.5\n",
- "52 / 2 is: 26.0\n",
- "53 / 2 is: 26.5\n",
- "54 / 2 is: 27.0\n",
- "55 / 2 is: 27.5\n",
- "56 / 2 is: 28.0\n",
- "57 / 2 is: 28.5\n",
- "58 / 2 is: 29.0\n",
- "59 / 2 is: 29.5\n",
- "60 / 2 is: 30.0\n",
- "61 / 2 is: 30.5\n",
- "62 / 2 is: 31.0\n",
- "63 / 2 is: 31.5\n",
- "64 / 2 is: 32.0\n",
- "65 / 2 is: 32.5\n",
- "66 / 2 is: 33.0\n",
- "67 / 2 is: 33.5\n",
- "68 / 2 is: 34.0\n",
- "69 / 2 is: 34.5\n",
- "70 / 2 is: 35.0\n",
- "71 / 2 is: 35.5\n",
- "72 / 2 is: 36.0\n",
- "73 / 2 is: 36.5\n",
- "74 / 2 is: 37.0\n",
- "75 / 2 is: 37.5\n",
- "76 / 2 is: 38.0\n",
- "77 / 2 is: 38.5\n",
- "78 / 2 is: 39.0\n",
- "79 / 2 is: 39.5\n",
- "80 / 2 is: 40.0\n",
- "81 / 2 is: 40.5\n",
- "82 / 2 is: 41.0\n",
- "83 / 2 is: 41.5\n",
- "84 / 2 is: 42.0\n",
- "85 / 2 is: 42.5\n",
- "86 / 2 is: 43.0\n",
- "87 / 2 is: 43.5\n",
- "88 / 2 is: 44.0\n",
- "89 / 2 is: 44.5\n",
- "90 / 2 is: 45.0\n",
- "91 / 2 is: 45.5\n",
- "92 / 2 is: 46.0\n",
- "93 / 2 is: 46.5\n",
- "94 / 2 is: 47.0\n",
- "95 / 2 is: 47.5\n",
- "96 / 2 is: 48.0\n",
- "97 / 2 is: 48.5\n",
- "98 / 2 is: 49.0\n",
- "99 / 2 is: 49.5\n",
- "100 / 2 is: 50.0\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_4(1).ipynb b/C++_from_the_Ground/Chapter_4(1).ipynb
deleted file mode 100755
index ca8e76db..00000000
--- a/C++_from_the_Ground/Chapter_4(1).ipynb
+++ /dev/null
@@ -1,1340 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:f944500666c92742656b5a25638e93a82042acafb19b205aac684e2d9ac2df51"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 4: Program Control Statements<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.1, Page Number: 58<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable declaration and initialization\n",
- "magic = random.randint(0,100) #Number which the user has to guess\n",
- "guess = 10 #Number which the user guesses\n",
- "\n",
- "if guess == magic:\n",
- " print \"***Right***\" #Result\n",
- "\n",
- "\n",
- " \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.2, Page Number: 59<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable decleration and initialization\n",
- "magic=random.randint(0,100) #Number to be guessed\n",
- "guess = 10 #Number the user guesses\n",
- "\n",
- "#Result\n",
- "if guess == magic:\n",
- " print \"***Right***\"\n",
- "else:\n",
- " print \"... Sorry, you're wrong.\"\n",
- "\n",
- "\n",
- "\n",
- " \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "... Sorry, you're wrong.\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.3, Page Number: 60<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable decleration and initialization\n",
- "a = 30 #User input for the two nos.\n",
- "b = 10\n",
- "\n",
- "#Calculation and Result\n",
- "if b:\n",
- " print a/b\n",
- "else:\n",
- " print \"Cannot divide by zero.\"\n",
- "\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "3\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.4, Page Number: 61<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable decleration \n",
- "magic = random.randint(0,100) #Numbr to be guessed\n",
- "guess = 10 #Number the user guesses\n",
- "\n",
- "#Result\n",
- "if guess == magic:\n",
- " print \"***Right***\"\n",
- " print magic,\" is the magic number.\"\n",
- "else:\n",
- " print \"... Sorry, you're wrong\" \n",
- " if(guess>magic): #use a nested if statement\n",
- " print \"Your guess is too high\"\n",
- " else:\n",
- " print \"Your guess is too low\"\n",
- "\n",
- " \n",
- " \n",
- "\n",
- " \n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": []
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.5, Page Number: 62<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "for x in range(6):\n",
- " if x==1: #using if-else ladder in a for loop\n",
- " print \"x is one\"\n",
- " elif x==2:\n",
- " print \"x is two\"\n",
- " elif x==3:\n",
- " print \"x is three\"\n",
- " elif x==4:\n",
- " print \"x is four\"\n",
- " else:\n",
- " print \"x is not between 1 nd 4\"\n",
- " \n",
- " \n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "x is not between 1 nd 4\n",
- "x is one\n",
- "x is two\n",
- "x is three\n",
- "x is four\n",
- "x is not between 1 nd 4\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.6, Page Number: 63<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import math\n",
- "\n",
- "for num in range(100):\n",
- " sq_root = math.sqrt(float(num)) #Calculation\n",
- " print num,\" \",sq_root #Result\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 0.0\n",
- "1 1.0\n",
- "2 1.41421356237\n",
- "3 1.73205080757\n",
- "4 2.0\n",
- "5 2.2360679775\n",
- "6 2.44948974278\n",
- "7 2.64575131106\n",
- "8 2.82842712475\n",
- "9 3.0\n",
- "10 3.16227766017\n",
- "11 3.31662479036\n",
- "12 3.46410161514\n",
- "13 3.60555127546\n",
- "14 3.74165738677\n",
- "15 3.87298334621\n",
- "16 4.0\n",
- "17 4.12310562562\n",
- "18 4.24264068712\n",
- "19 4.35889894354\n",
- "20 4.472135955\n",
- "21 4.58257569496\n",
- "22 4.69041575982\n",
- "23 4.79583152331\n",
- "24 4.89897948557\n",
- "25 5.0\n",
- "26 5.09901951359\n",
- "27 5.19615242271\n",
- "28 5.29150262213\n",
- "29 5.38516480713\n",
- "30 5.47722557505\n",
- "31 5.56776436283\n",
- "32 5.65685424949\n",
- "33 5.74456264654\n",
- "34 5.83095189485\n",
- "35 5.9160797831\n",
- "36 6.0\n",
- "37 6.0827625303\n",
- "38 6.16441400297\n",
- "39 6.2449979984\n",
- "40 6.32455532034\n",
- "41 6.40312423743\n",
- "42 6.48074069841\n",
- "43 6.5574385243\n",
- "44 6.63324958071\n",
- "45 6.7082039325\n",
- "46 6.78232998313\n",
- "47 6.8556546004\n",
- "48 6.92820323028\n",
- "49 7.0\n",
- "50 7.07106781187\n",
- "51 7.14142842854\n",
- "52 7.21110255093\n",
- "53 7.28010988928\n",
- "54 7.34846922835\n",
- "55 7.4161984871\n",
- "56 7.48331477355\n",
- "57 7.54983443527\n",
- "58 7.61577310586\n",
- "59 7.68114574787\n",
- "60 7.74596669241\n",
- "61 7.81024967591\n",
- "62 7.87400787401\n",
- "63 7.93725393319\n",
- "64 8.0\n",
- "65 8.0622577483\n",
- "66 8.12403840464\n",
- "67 8.18535277187\n",
- "68 8.24621125124\n",
- "69 8.30662386292\n",
- "70 8.36660026534\n",
- "71 8.42614977318\n",
- "72 8.48528137424\n",
- "73 8.54400374532\n",
- "74 8.60232526704\n",
- "75 8.66025403784\n",
- "76 8.71779788708\n",
- "77 8.77496438739\n",
- "78 8.83176086633\n",
- "79 8.88819441732\n",
- "80 8.94427191\n",
- "81 9.0\n",
- "82 9.05538513814\n",
- "83 9.11043357914\n",
- "84 9.16515138991\n",
- "85 9.21954445729\n",
- "86 9.2736184955\n",
- "87 9.32737905309\n",
- "88 9.38083151965\n",
- "89 9.43398113206\n",
- "90 9.48683298051\n",
- "91 9.53939201417\n",
- "92 9.59166304663\n",
- "93 9.64365076099\n",
- "94 9.69535971483\n",
- "95 9.74679434481\n",
- "96 9.79795897113\n",
- "97 9.8488578018\n",
- "98 9.89949493661\n",
- "99 9.94987437107\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.7, Page Number: 64<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for i in xrange(100,-100,-5): \n",
- " print i,\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100 95 90 85 80 75 70 65 60 55 50 45 40 35 30 25 20 15 10 5 0 -5 -10 -15 -20 -25 -30 -35 -40 -45 -50 -55 -60 -65 -70 -75 -80 -85 -90 -95\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.8, Page Number: 66<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "#Variable decleration\n",
- "x=0\n",
- "\n",
- "#Loop till 123 is entered\n",
- "while x!=123:\n",
- " print \"Enter a number: \"\n",
- " x = 123\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a number: \n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.9, Page Number: 68<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "print \"Help on:\"\n",
- "print \"1. for\"\n",
- "print \"2. if\"\n",
- "print \"3. while\"\n",
- "\n",
- "\n",
- "choice = 2 #Choice of user\n",
- "\n",
- "if choice==1: #Executing users choice with if-else\n",
- " print \"for is c++'s most versatile loop.\"\n",
- "elif choice==2:\n",
- " print \"if is c++'s conditional branch statement.\"\n",
- "elif choice==3:\n",
- " print \"switch is C++'s multiway branch statement. \"\n",
- "else:\n",
- " print \"You must enter a number between 1 and 3.\"\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Help on:\n",
- "1. for\n",
- "2. if\n",
- "3. while\n",
- "if is c++'s conditional branch statement.\n"
- ]
- }
- ],
- "prompt_number": 19
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.10, Page Number: 69<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for i in range(5):\n",
- " if i==0:\n",
- " print \"less than 1\"\n",
- " elif i==1:\n",
- " print \"less than 2\"\n",
- " elif i==2:\n",
- " print \"less than 3\"\n",
- " elif i==3:\n",
- " print \"less than 4\"\n",
- " elif i==4:\n",
- " print \"less than 5\"\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "less than 1\n",
- "less than 2\n",
- "less than 3\n",
- "less than 4\n",
- "less than 5\n"
- ]
- }
- ],
- "prompt_number": 20
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.11, Page Number: 71<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "#Variable decleration\n",
- "ch = 32\n",
- "\n",
- "#Loop to print the characters\n",
- "for ch in range(128):\n",
- " print chr(ch)\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\u0000\n",
- "\u0001\n",
- "\u0002\n",
- "\u0003\n",
- "\u0004\n",
- "\u0005\n",
- "\u0006\n",
- "\u0007\n",
- "\b\n",
- "\t\n",
- "\n",
- "\n",
- "\u000b",
- "\n",
- "\f",
- "\n",
- "\r\n",
- "\u000e\n",
- "\u000f\n",
- "\u0010\n",
- "\u0011\n",
- "\u0012\n",
- "\u0013\n",
- "\u0014\n",
- "\u0015\n",
- "\u0016\n",
- "\u0017\n",
- "\u0018\n",
- "\u0019\n",
- "\u001a\n",
- "\u001b\n",
- "\u001c",
- "\n",
- "\u001d",
- "\n",
- "\u001e",
- "\n",
- "\u001f\n",
- " \n",
- "!\n",
- "\"\n",
- "#\n",
- "$\n",
- "%\n",
- "&\n",
- "'\n",
- "(\n",
- ")\n",
- "*\n",
- "+\n",
- ",\n",
- "-\n",
- ".\n",
- "/\n",
- "0\n",
- "1\n",
- "2\n",
- "3\n",
- "4\n",
- "5\n",
- "6\n",
- "7\n",
- "8\n",
- "9\n",
- ":\n",
- ";\n",
- "<\n",
- "=\n",
- ">\n",
- "?\n",
- "@\n",
- "A\n",
- "B\n",
- "C\n",
- "D\n",
- "E\n",
- "F\n",
- "G\n",
- "H\n",
- "I\n",
- "J\n",
- "K\n",
- "L\n",
- "M\n",
- "N\n",
- "O\n",
- "P\n",
- "Q\n",
- "R\n",
- "S\n",
- "T\n",
- "U\n",
- "V\n",
- "W\n",
- "X\n",
- "Y\n",
- "Z\n",
- "[\n",
- "\\\n",
- "]\n",
- "^\n",
- "_\n",
- "`\n",
- "a\n",
- "b\n",
- "c\n",
- "d\n",
- "e\n",
- "f\n",
- "g\n",
- "h\n",
- "i\n",
- "j\n",
- "k\n",
- "l\n",
- "m\n",
- "n\n",
- "o\n",
- "p\n",
- "q\n",
- "r\n",
- "s\n",
- "t\n",
- "u\n",
- "v\n",
- "w\n",
- "x\n",
- "y\n",
- "z\n",
- "{\n",
- "|\n",
- "}\n",
- "~\n",
- "\u007f\n"
- ]
- }
- ],
- "prompt_number": 21
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.12, Page Number: 72<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable decleration\n",
- "len = 5\n",
- "\n",
- "while (len>0 & len<80):\n",
- " print \".\"\n",
- " len-=1\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- ".\n",
- ".\n",
- ".\n",
- ".\n",
- ".\n"
- ]
- }
- ],
- "prompt_number": 22
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.13, Page Number: 73<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable Declaration\n",
- "num=95\n",
- "\n",
- "while True:\n",
- " print \"Enter a number(100 to stop): \"\n",
- " num+=1 #User input, incrementing num till it reaches 100\n",
- " if(num==100): #Condition check to stop loop\n",
- " break\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a number(100 to stop): \n",
- "Enter a number(100 to stop): \n",
- "Enter a number(100 to stop): \n",
- "Enter a number(100 to stop): \n",
- "Enter a number(100 to stop): \n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.14, Page Number: 73<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable decleration\n",
- "magic = random.randint(0,100) #Number which the user has to guess\n",
- "low=0\n",
- "high=100\n",
- "\n",
- "#Play thr magic number game\n",
- "while True:\n",
- " guess = random.randint(low,high) #Number which the user guesses\n",
- " if guess==magic: \n",
- " print \"**Right**\"\n",
- " print magic,\" is the magic number.\"\n",
- " break\n",
- " else:\n",
- " print \"...Sorry, you're wrong.\"\n",
- " if(guess>magic):\n",
- " print \"Your guess is too high.\"\n",
- " high=guess\n",
- " else:\n",
- " print \"Your guess is too low.\"\n",
- " low=guess\n",
- " \n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too high.\n",
- "...Sorry, you're wrong.\n",
- "Your guess is too low.\n",
- "**Right**\n",
- "72 is the magic number.\n"
- ]
- }
- ],
- "prompt_number": 26
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.15, Page Number: 74<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for x in range(100+1):\n",
- " if x%2: #Condition check to continue the loop\n",
- " continue\n",
- " print x,\n",
- " \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.16, Page Number: 75<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for t in range(100):\n",
- " if t==10: #Condition check to break out of the loop\n",
- " break\n",
- " print t,\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.17, Page Number: 75<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for t in range(100):\n",
- " count = 1 \n",
- " while True:\n",
- " print count,\n",
- " count+=1\n",
- " if count==10: \n",
- " break #Breaks from the inner loop\n",
- " print\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n",
- "1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.18, Page Number: 76<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "for i in range(2,1000):\n",
- " j=2\n",
- " for j in range(2,i/j): #Nested for loop\n",
- " if i%j == False: #Check for prime no.\n",
- " break\n",
- " if j>(i/j):\n",
- " print i,\" is prime.\" #Result\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2 is prime.\n",
- "3 is prime.\n",
- "11 is prime.\n",
- "13 is prime.\n",
- "17 is prime.\n",
- "19 is prime.\n",
- "23 is prime.\n",
- "29 is prime.\n",
- "31 is prime.\n",
- "37 is prime.\n",
- "41 is prime.\n",
- "43 is prime.\n",
- "47 is prime.\n",
- "53 is prime.\n",
- "59 is prime.\n",
- "61 is prime.\n",
- "67 is prime.\n",
- "71 is prime.\n",
- "73 is prime.\n",
- "79 is prime.\n",
- "83 is prime.\n",
- "89 is prime.\n",
- "97 is prime.\n",
- "101 is prime.\n",
- "103 is prime.\n",
- "107 is prime.\n",
- "109 is prime.\n",
- "113 is prime.\n",
- "127 is prime.\n",
- "131 is prime.\n",
- "137 is prime.\n",
- "139 is prime.\n",
- "149 is prime.\n",
- "151 is prime.\n",
- "157 is prime.\n",
- "163 is prime.\n",
- "167 is prime.\n",
- "173 is prime.\n",
- "179 is prime.\n",
- "181 is prime.\n",
- "191 is prime.\n",
- "193 is prime.\n",
- "197 is prime.\n",
- "199 is prime.\n",
- "211 is prime.\n",
- "223 is prime.\n",
- "227 is prime.\n",
- "229 is prime.\n",
- "233 is prime.\n",
- "239 is prime.\n",
- "241 is prime.\n",
- "251 is prime.\n",
- "257 is prime.\n",
- "263 is prime.\n",
- "269 is prime.\n",
- "271 is prime.\n",
- "277 is prime.\n",
- "281 is prime.\n",
- "283 is prime.\n",
- "293 is prime.\n",
- "307 is prime.\n",
- "311 is prime.\n",
- "313 is prime.\n",
- "317 is prime.\n",
- "331 is prime.\n",
- "337 is prime.\n",
- "347 is prime.\n",
- "349 is prime.\n",
- "353 is prime.\n",
- "359 is prime.\n",
- "367 is prime.\n",
- "373 is prime.\n",
- "379 is prime.\n",
- "383 is prime.\n",
- "389 is prime.\n",
- "397 is prime.\n",
- "401 is prime.\n",
- "409 is prime.\n",
- "419 is prime.\n",
- "421 is prime.\n",
- "431 is prime.\n",
- "433 is prime.\n",
- "439 is prime.\n",
- "443 is prime.\n",
- "449 is prime.\n",
- "457 is prime.\n",
- "461 is prime.\n",
- "463 is prime.\n",
- "467 is prime.\n",
- "479 is prime.\n",
- "487 is prime.\n",
- "491 is prime.\n",
- "499 is prime.\n",
- "503 is prime.\n",
- "509 is prime.\n",
- "521 is prime.\n",
- "523 is prime.\n",
- "541 is prime.\n",
- "547 is prime.\n",
- "557 is prime.\n",
- "563 is prime.\n",
- "569 is prime.\n",
- "571 is prime.\n",
- "577 is prime.\n",
- "587 is prime.\n",
- "593 is prime.\n",
- "599 is prime.\n",
- "601 is prime.\n",
- "607 is prime.\n",
- "613 is prime.\n",
- "617 is prime.\n",
- "619 is prime.\n",
- "631 is prime.\n",
- "641 is prime.\n",
- "643 is prime.\n",
- "647 is prime.\n",
- "653 is prime.\n",
- "659 is prime.\n",
- "661 is prime.\n",
- "673 is prime.\n",
- "677 is prime.\n",
- "683 is prime.\n",
- "691 is prime.\n",
- "701 is prime.\n",
- "709 is prime.\n",
- "719 is prime.\n",
- "727 is prime.\n",
- "733 is prime.\n",
- "739 is prime.\n",
- "743 is prime.\n",
- "751 is prime.\n",
- "757 is prime.\n",
- "761 is prime.\n",
- "769 is prime.\n",
- "773 is prime.\n",
- "787 is prime.\n",
- "797 is prime.\n",
- "809 is prime.\n",
- "811 is prime.\n",
- "821 is prime.\n",
- "823 is prime.\n",
- "827 is prime.\n",
- "829 is prime.\n",
- "839 is prime.\n",
- "853 is prime.\n",
- "857 is prime.\n",
- "859 is prime.\n",
- "863 is prime.\n",
- "877"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- " is prime.\n",
- "881 is prime.\n",
- "883 is prime.\n",
- "887 is prime.\n",
- "907 is prime.\n",
- "911 is prime.\n",
- "919 is prime.\n",
- "929 is prime.\n",
- "937 is prime.\n",
- "941 is prime.\n",
- "947 is prime.\n",
- "953 is prime.\n",
- "967 is prime.\n",
- "971 is prime.\n",
- "977 is prime.\n",
- "983 is prime.\n",
- "991 is prime.\n",
- "997 is prime.\n"
- ]
- }
- ],
- "prompt_number": 30
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 4.19, Page Number: 78<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable declaration\n",
- "magic = random.randint(0,100) #Number to be guessed\n",
- "i=1\n",
- "high=100\n",
- "low=0\n",
- "\n",
- "#Function to play the magic number game\n",
- "def play(m):\n",
- " low=0\n",
- " high=100\n",
- " for t in range(100):\n",
- " x = random.randint(low,high) #Number guessed by the user\n",
- " if x==m:\n",
- " print \"***Right***\"\n",
- " return\n",
- " else:\n",
- " if(x<m):\n",
- " print \"Too low.\"\n",
- " low=x\n",
- " else:\n",
- " print \"Too high.\"\n",
- " high=x\n",
- " print \"You've used up all your guesses\" \n",
- "\n",
- "#Menu\n",
- "while True:\n",
- " print \"1.Get a new magic number.\" \n",
- " print \"2.Play\"\n",
- " print \"3.Quit\"\n",
- " while True:\n",
- " option = i \n",
- " if option>=1 and option<=3:\n",
- " break\n",
- " if option==1:\n",
- " magic=random.randint(0,100) #Number to be guessed\n",
- " elif option==2:\n",
- " play(magic) #Calls the function play\n",
- " elif option==3:\n",
- " print \"Goodbye\" \n",
- " break\n",
- " i+=1 #increments i such that the 3 options get selected sequentially\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1.Get a new magic number.\n",
- "2.Play\n",
- "3.Quit\n",
- "1.Get a new magic number.\n",
- "2.Play\n",
- "3.Quit\n",
- "Too low.\n",
- "Too low.\n",
- "Too low.\n",
- "Too low.\n",
- "Too high.\n",
- "Too low.\n",
- "Too high.\n",
- "Too low.\n",
- "Too high.\n",
- "Too high.\n",
- "Too high.\n",
- "Too high.\n",
- "Too low.\n",
- "***Right***\n",
- "1.Get a new magic number.\n",
- "2.Play\n",
- "3.Quit\n",
- "Goodbye\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_5(1).ipynb b/C++_from_the_Ground/Chapter_5(1).ipynb
deleted file mode 100755
index 13085f5e..00000000
--- a/C++_from_the_Ground/Chapter_5(1).ipynb
+++ /dev/null
@@ -1,1191 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:f41d93d043c68dcb6af847a40af38d47fc3a3d45c60675afb574707e38d804d9"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 5: Arrays ans Strings<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.1, Page Number: 82<h3>\n",
- " "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "sample = range(10) #Declares an array [0,1,2,3,4,5,6,7,8,9]\n",
- "\n",
- "#Displays the array\n",
- "for t in range(10):\n",
- " print sample[t],\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.2, Page Number: 83<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable declaration\n",
- "list = [] #List of integers\n",
- "\n",
- "for i in range(10):\n",
- " list.append(random.randint(0,1000)) #randomely assigning integers\n",
- " \n",
- "#Finding the minimum value\n",
- "min_value = list[0]\n",
- "\n",
- "for i in range(10):\n",
- " if min_value>list[i]:\n",
- " min_value=list[i]\n",
- "print \"minimum value: \",min_value #Result:Minimum value\n",
- "\n",
- "#Finding maximum value\n",
- "max_value = list[0]\n",
- "\n",
- "for i in range(10):\n",
- " if max_value<list[i]:\n",
- " max_value=list[i]\n",
- "print \"maximum value: \",max_value #Result:Maximum value\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "minimum value: 192\n",
- "maximum value: 684\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.3, Page Number: 85<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable declaration\n",
- "nums = []\n",
- "size = 10\n",
- "\n",
- "#Initializing list with random numbers\n",
- "for t in range(size):\n",
- " nums.append(random.randint(0,1000))\n",
- "\n",
- "#Displays original array\n",
- "print \"Original array is: \"\n",
- "print nums\n",
- "\n",
- "#Bubble Sort\n",
- "for a in range(size):\n",
- " for b in xrange(size-1,a,-1):\n",
- " if nums[b-1]>nums[b]:\n",
- " t=nums[b-1]\n",
- " nums[b-1]=nums[b]\n",
- " nums[b] = t\n",
- "\n",
- "#Display sorted array\n",
- "print \"Sorted array is: \"\n",
- "print nums\n",
- "\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original array is: \n",
- "[388, 661, 218, 595, 167, 46, 704, 140, 559, 428]\n",
- "Sorted array is: \n",
- "[46, 140, 167, 218, 388, 428, 559, 595, 661, 704]\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.4, Page Number: 87<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable decleration\n",
- "str = \"Hello\"\n",
- "\n",
- "#Result\n",
- "print \"Here is your string:\",\n",
- "print str\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Here is your string: Hello\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.5, Page Number: 88<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "\n",
- "print \"Enter a string: \"\n",
- "\n",
- " \n",
- "str = \"Hello\"\n",
- "\n",
- "#Result\n",
- "print \"Here is your string:\",\n",
- "print str\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a string: \n",
- "Here is your string: Hello\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.6, Page Number: 89<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable decleration\n",
- "s=str\n",
- "str = s #copying s into str\n",
- "\n",
- "#Result\n",
- "print str\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Hello\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.7, Page Number: 89<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable decleration\n",
- "s1 = \"Hello\"\n",
- "s2 = \" There\"\n",
- "\n",
- "#Concatenation\n",
- "s1+=s2\n",
- "\n",
- "#Result\n",
- "print s1\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Hello There\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.8, Page Number: 90<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def password():\n",
- " print \"Enter password: \" #User input for password\n",
- " s= \"pass\"\n",
- " if s==\"password\":\n",
- " return True\n",
- " else:\n",
- " print \"Invalid password.\"\n",
- " return False\n",
- "\n",
- "#Result\n",
- "if password() :\n",
- " print \"Logged On.\"\n",
- "else:\n",
- " print \"Access denied\"\n",
- " \n",
- " \n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter password: \n",
- "Invalid password.\n",
- "Access denied\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.9, Page Number: 91<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "import string\n",
- "\n",
- " s=raw_input(\"Enter a string: \") #User input of string;\n",
- " if s==\"quit\": #Sting comparison\n",
- " break\n",
- " \n",
- " \n",
- "\n",
- " \n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a string: ddc\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a string: hello\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter a string: quit\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.10, Page Number: 91<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "str = \"Hello\"\n",
- "\n",
- "#Result\n",
- "print \"Length is: \",len(str)\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Length is: 5\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.11, Page Number: 92<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "str = \"Hello World\"\n",
- "\n",
- "#Reversing a String\n",
- "rev = str[::-1]\n",
- "\n",
- "#Result\n",
- "print rev\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "dlroW olleH\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.12, Page Number: 92<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "s1 = \"Hello\"\n",
- "s2 = \"there\"\n",
- "\n",
- "#Printing lengths\n",
- "print \"lengths: \",len(s1),' ',len(s2)\n",
- "\n",
- "#Comparing\n",
- "if(s1==s2):\n",
- " print \"The strings are equal\"\n",
- "else:\n",
- " print \"not equal\"\n",
- "\n",
- "#Concatenation\n",
- "s1+=s2\n",
- "print s1\n",
- "\n",
- "\n",
- "#Copying\n",
- "s1=s2\n",
- "\n",
- "#Result\n",
- "print s1,\"and\",s2,\" are now the same\"\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "lengths: 5 5\n",
- "not equal\n",
- "Hellothere\n",
- "there and there are now the same\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.13, Page Number: 93<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "#Variable Initialization\n",
- "str= \"this is a test\"\n",
- "\n",
- "str=string.upper(str)\n",
- "\n",
- "#Result\n",
- "print str\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "THIS IS A TEST\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.14, Page Number: 94<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "arr=[] #The 2-D list\n",
- "new=[] #The nested list\n",
- "\n",
- "#Initializing the 2-D array\n",
- "for i in range(3):\n",
- " new=[]\n",
- " for j in range(4):\n",
- " new.append(i*4+j+1)\n",
- " arr.append(new)\n",
- "\n",
- "#Result\n",
- "for i in range(3):\n",
- " for j in range(4):\n",
- " print arr[i][j],\n",
- " print"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 2 3 4\n",
- "5 6 7 8\n",
- "9 10 11 12\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.15, Page Number: 98<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variabe Initialzation\n",
- "sqrs= [[1,1],[2,4],[3,9],[4,16],[5,25],\n",
- " [6,36],[7,49],[8,64],[9,81],[10,100]] #Array storing the squares\n",
- "i=6 #User input of number whose square is to be looked up\n",
- "\n",
- "#Search for the number\n",
- "for j in range(10):\n",
- " if sqrs[j][0]==i:\n",
- " break\n",
- " \n",
- "#Result\n",
- "print \"The square of \",i,\" is \", sqrs[j][1]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The square of 6 is 36\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.16, Page Number: 99<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def f1():\n",
- " s=\"this is a test\" #initial s\n",
- " print s\n",
- " s=\"CHANGED\" #s is now changed \n",
- " print s\n",
- "\n",
- "#Calling the function twice\n",
- "f1()\n",
- "f1()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "this is a test\n",
- "CHANGED\n",
- "this is a test\n",
- "CHANGED\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.17, Page Number: 101<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable decleration\n",
- "text=[]\n",
- "str=['eat','play','work'] #user input of strings\n",
- "p=len(str)\n",
- "\n",
- "for t in range(p):\n",
- " print t,\":\"\n",
- " text.append(str[t]) #Here, user input taken from the list\n",
- " \n",
- "#Result; redisplay the strings\n",
- "for i in range(p):\n",
- " print text[i]\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 :\n",
- "1 :\n",
- "2 :\n",
- "eat\n",
- "play\n",
- "work\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 5.18, Page Number: 103<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import random \n",
- "\n",
- "#Variable decleration\n",
- "name=[] #this list holds employee names\n",
- "wage=[] #their phone numbers\n",
- "phone=[] #hours worked per week\n",
- "hours=[] #wage\n",
- "num=0 #User choice\n",
- "\n",
- "#Menu \n",
- "def menu():\n",
- " global num #All options are chosen one by one\n",
- " print \"0.Quit.\"\n",
- " print \"1.Enter information\"\n",
- " print \"2.Report information\"\n",
- " print \"Choose one: \"\n",
- " num=int(input())\n",
- " return num #Return users selction\n",
- "\n",
- "#Enter information\n",
- "def enter():\n",
- " for i in range(10):\n",
- " n=raw_input(\"Enter your name: \")\n",
- " name.append(n)\n",
- " phone.append(int(input(\"Enter your phone number\")))\n",
- " hours.append(int(input(\"Enter number of hours worked: \")))\n",
- " wage.append(int(input(\"Enter wage: \")))\n",
- "\n",
- "#Display report\n",
- "def report():\n",
- " p=len(name)\n",
- " for i in range(p):\n",
- " print name[i],' ',phone[i]\n",
- " print \"Pay for the week: \",wage[i]*hours[i]\n",
- "\n",
- "\n",
- "while True:\n",
- " ch=menu() #get selection\n",
- " if ch==0:\n",
- " break\n",
- " elif ch==1:\n",
- " enter()\n",
- " elif ch==2:\n",
- " report()\n",
- " else:\n",
- " print \"Try again.\"\n",
- " if ch==0:\n",
- " break\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0.Quit.\n",
- "1.Enter information\n",
- "2.Report information\n",
- "Choose one: \n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Anny\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number987654321\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 50\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Billy\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9456783652\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 50\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Catherene\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9476836578\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 50\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Dolly\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9831356748\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 15\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 50\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Emily\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9576843721\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 15\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 40\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Jack\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9485738567\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 45\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Kevin\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9345678923\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 45\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Lily\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9345672831\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 45\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Monica\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number9475867483\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 50\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your name: Irene\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter your phone number5674356776\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter number of hours worked: 10\n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter wage: 20\n"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0.Quit.\n",
- "1.Enter information\n",
- "2.Report information\n",
- "Choose one: \n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "2\n"
- ]
- },
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Anny 987654321\n",
- "Pay for the week: 500\n",
- "Billy 9456783652\n",
- "Pay for the week: 500\n",
- "Catherene 9476836578\n",
- "Pay for the week: 500\n",
- "Dolly 9831356748\n",
- "Pay for the week: 750\n",
- "Emily 9576843721\n",
- "Pay for the week: 600\n",
- "Jack 9485738567\n",
- "Pay for the week: 450\n",
- "Kevin 9345678923\n",
- "Pay for the week: 450\n",
- "Lily 9345672831\n",
- "Pay for the week: 450\n",
- "Monica 9475867483\n",
- "Pay for the week: 500\n",
- "Irene 5674356776\n",
- "Pay for the week: 200\n",
- "0.Quit.\n",
- "1.Enter information\n",
- "2.Report information\n",
- "Choose one: \n"
- ]
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_6(1).ipynb b/C++_from_the_Ground/Chapter_6(1).ipynb
deleted file mode 100755
index 5010922a..00000000
--- a/C++_from_the_Ground/Chapter_6(1).ipynb
+++ /dev/null
@@ -1,558 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:b382733cd221154cfe7c9ffe63477448084168d501d248c2b1d0c253ed011821"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 6: Pointers<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.1, Page Number: 107<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "balance =c_int(3200) #int variable\n",
- "balptr=pointer(balance) #pointer to int\n",
- "value=balptr[0] #accessing the value using the pointer\n",
- "\n",
- "#Result\n",
- "print \"balance: \",value \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "balance: 3200\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.2, Page Number: 109<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "x=123.23\n",
- "y=c_double()\n",
- "p=POINTER(c_int)\n",
- "\n",
- "p=pointer(c_int(int(x))) #type case double to int\n",
- "y=p[0]\n",
- "\n",
- "#Result\n",
- "print y"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "123\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.3, Page Number: 110<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "num=c_int() #declaring int\n",
- "p=pointer(num) #pointer to int\n",
- "\n",
- "p[0]=100\n",
- "print num.value,\n",
- "p[0]+=1\n",
- "print num.value,\n",
- "p[0]-=1\n",
- "print num.value"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100 101 100\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.4, Page Number: 111<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "j=c_int()\n",
- "g=c_double()\n",
- "i=pointer(j)\n",
- "f=pointer(g)\n",
- "\n",
- "\n",
- "for x in range(10):\n",
- " print addressof(i.contents)+x,addressof(f.contents)+x\n",
- " \n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "84638480 84639248\n",
- "84638481 84639249\n",
- "84638482 84639250\n",
- "84638483 84639251\n",
- "84638484 84639252\n",
- "84638485 84639253\n",
- "84638486 84639254\n",
- "84638487 84639255\n",
- "84638488 84639256\n",
- "84638489 84639257\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.5, Page Number: 114<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "str=\"This is a test\"\n",
- "token =\"\"\n",
- "i=0\n",
- "\n",
- "#Read a token at a time from the string\n",
- "while i<len(str):\n",
- " token=c_char_p(\"\") #set token to null string\n",
- " q=pointer(token) \n",
- " #Read characters until either a space or the null terminator is encountered'''\n",
- " while i<len(str) and not(str[i]==\" \"):\n",
- " q[0]+=str[i]\n",
- " i+=1\n",
- " i+=1 #advance past the space\n",
- " print q[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This\n",
- "is\n",
- "a\n",
- "test\n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.6, Page Number: 115<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "str=\"This is a test\"\n",
- "i=0\n",
- "\n",
- "#Read a token at a time from the string\n",
- "while i<len(str):\n",
- " token=\"\" #set q to null string\n",
- " #Read characters until either a space or the null terminator is encountered'''\n",
- " while i<len(str) and not(str[i]==\" \"):\n",
- " token+=str[i]\n",
- " i+=1\n",
- " i+=1 #advance past the space\n",
- " print token"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This\n",
- "is\n",
- "a\n",
- "test\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.7, Page Number: 115<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import string\n",
- "\n",
- "str=c_char_p(\"hello tom\")\n",
- "q=\"\"\n",
- "p=pointer(str) #put address of str into p\n",
- " \n",
- "p[0]=string.upper(p[0])\n",
- "\n",
- "#Result\n",
- "print p[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "HELLO TOM\n"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.8, Page Number: 117<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Varible declaration\n",
- "s=\"Pointers are fun to use\"\n",
- "\n",
- "#Result\n",
- "print s\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Pointers are fun to use\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.9, Page Number: 118<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "num=[]\n",
- "\n",
- "#User input\n",
- "for i in range(10):\n",
- " num.append(i)\n",
- " \n",
- "start=num #set start to the starting pointer \n",
- "for i in range(10):\n",
- " print start[i],\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.10, Page Number: 119<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "fortunes=[\"Soon, you will come into some money.\",\n",
- " \"A new love will enter your lifr. \",\n",
- " \"You will live long and prosper.\",\n",
- " \"Now is a good time to invest for the future.\",\n",
- " \"A close friend will ask for a favour.\"]\n",
- "\n",
- "print \"To see your fortune, press a key: \"\n",
- "\n",
- "#Randomize the random number generator\n",
- "chance=random.randint(0,100)\n",
- "chance=chance%5\n",
- "\n",
- "#Result\n",
- "print fortunes[chance]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "To see your fortune, press a key: \n",
- "A close friend will ask for a favour.\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.11, Page Number: 120<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "keyword=[[\"for\",\"for(initialization; condition; increment\"],\n",
- " [\"if\",\"if(condition) ... else ...\"],\n",
- " [\"switch\",\"switch(value) { case-list }\"],\n",
- " [\"while\",\"while(condition) ...\"],\n",
- " [\"\",\"\"]] #Terminates the list with nulls\n",
- " \n",
- "#User input \n",
- "print \"Enter keyword: \"\n",
- "str=\"for\" \n",
- "\n",
- "for i in range(4):\n",
- " if str==keyword[i][0]:\n",
- " print keyword[i][1]\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter keyword: \n",
- "for(initialization; condition; increment\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.12, Page Number: 123<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "x=c_int(10) #int variable\n",
- "p=pointer(x) #pointer to int\n",
- "q=pointer(p) #pointer to a pointer\n",
- "\n",
- "#Result\n",
- "print q[0][0] #accessing the value using a pointer to a pointer\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 6.13, Page Number: 126<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "s=c_char_p()\n",
- "p1=pointer(s)\n",
- "x=0\n",
- "\n",
- "while True:\n",
- " print \"\\nEnter a string: \",\n",
- " if x==2:\n",
- " p1[0]=c_char_p(\"done\")\n",
- " else:\n",
- " p1[0]=c_char_p(\"Hello\")\n",
- " #print the ASCII values of each characcter\n",
- " for i in range(0,len(p1[0])):\n",
- " print ord(p1[0][i]),\n",
- " x+=1\n",
- " if p1[0]==\"done\":\n",
- " break\n",
- " \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "\n",
- "Enter a string: 72 101 108 108 111 \n",
- "Enter a string: 72 101 108 108 111 \n",
- "Enter a string: 100 111 110 101\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_7(1).ipynb b/C++_from_the_Ground/Chapter_7(1).ipynb
deleted file mode 100755
index 027b30f5..00000000
--- a/C++_from_the_Ground/Chapter_7(1).ipynb
+++ /dev/null
@@ -1,908 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:ab47bb393809bc88589e7e92320813b90077813594dc417229af49780e24b53b"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 7: Functions,Part One: The Fundamentals<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.1, Page Number: 129<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def f1():\n",
- " print \"Enter something: \"\n",
- " str= \"Hello\" #User-input\n",
- " print str\n",
- " \n",
- "#Variable decleration\n",
- "str=\"This is str in main\"\n",
- "\n",
- "print str\n",
- "f1() #function call\n",
- "print str"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This is str in main\n",
- "Enter something: \n",
- "Hello\n",
- "This is str in main\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.2, Page Number: 130<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable decleration\n",
- "choice=0\n",
- "\n",
- "print \"(1) add numbers or (2) concatenate strings?: \"\n",
- "choice=2 #User Input taken as 2\n",
- "\n",
- "if choice==1:\n",
- " print \"Enter two numbers: \"\n",
- " a=5 #Variable decleration; User Input\n",
- " b=7\n",
- " print a+b #Result\n",
- "else :\n",
- " print \"Enter two strings: \"\n",
- " s1=\"Hello\" #Variable decleration; User Input\n",
- " s2=\"World\"\n",
- " s1+=s2 #Concatenation\n",
- " print s1 #Result"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(1) add numbers or (2) concatenate strings?: \n",
- "Enter two strings: \n",
- "HelloWorld\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.3, Page Number: 131<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable decleration\n",
- "i=10\n",
- "j=100\n",
- "\n",
- "if j>0:\n",
- " i=None \n",
- " i= j/2\n",
- " print \"inner i: \",i #Result\n",
- "\n",
- "print \"outer i: \",i #Result"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "inner i: 50\n",
- "outer i: 50\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.4, Page Number: 132<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "a=5 #Variable decleration; user input\n",
- "\n",
- "b=10 #declaration of another variable; user input\n",
- "\n",
- "#Result\n",
- "print \"Product: \",a*b"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Product: 50\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.5, Page Number: 134<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import random\n",
- "\n",
- "#Variable decleration\n",
- "count=None\n",
- "num_right=0\n",
- "\n",
- "#Function for the drill\n",
- "def drill():\n",
- " #Generate two numbers between 0 and 99.\n",
- " a=random.randint(0,99)\n",
- " b=random.randint(0,99)\n",
- " #The user gets three tries to get it right.\n",
- " for count in range(3):\n",
- " print \"What is \",a,\" + \",b,\"? \"\n",
- " ans = random.randint(0,200) #user input\n",
- " if ans==a+b:\n",
- " print \"Right\"\n",
- " num_right+=1\n",
- " print \"You've used up all your tries.\"\n",
- " print \"The answer is \",a+b\n",
- " \n",
- "#Main function \n",
- "print \"How many practice problems: \"\n",
- "count=2 #User input taken as 2\n",
- "num_right=0\n",
- "while True:\n",
- " drill()\n",
- " count-=1\n",
- " if(count==0):\n",
- " break\n",
- " \n",
- "#Result\n",
- "print \"You got \",num_right,\" right. \" \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "How many practice problems: \n",
- "What is 9 + 89 ? \n",
- "What is 9 + 89 ? \n",
- "What is 9 + 89 ? \n",
- "You've used up all your tries.\n",
- "The answer is 98\n",
- "What is 85 + 98 ? \n",
- "What is 85 + 98 ? \n",
- "What is 85 + 98 ? \n",
- "You've used up all your tries.\n",
- "The answer is 183\n",
- "You got 0 right. \n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.6, Page Number: 136<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- " \n",
- "def f(j):\n",
- " j[0]=100 #j is assigned 100\n",
- "\n",
- "#Variable decleration\n",
- "i=c_int(1)\n",
- "p=pointer(i)\n",
- "\n",
- "#Calling the function\n",
- "f(p) \n",
- "\n",
- "print i"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "c_long(100)\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.7, Page Number: 137<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- " \n",
- "def f(j):\n",
- " j[0]=100 #j is assigned 100\n",
- "\n",
- "#Variable decleration\n",
- "i=c_int(1)\n",
- "p=pointer(i)\n",
- "\n",
- "#Calling the function\n",
- "f(p) \n",
- "\n",
- "print i"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "c_long(100)\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.8, Page Number: 137<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def display(num):\n",
- " for i in range(10):\n",
- " print num[i],\n",
- " \n",
- "#Variable declaration\n",
- "t=[]\n",
- "\n",
- "for i in range(10):\n",
- " t.append(i)\n",
- "#Pass list to a function\n",
- "display(t)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.9, Page Number: 138<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def display(num):\n",
- " print num,\n",
- "\n",
- "#Variable declaration\n",
- "t=[]\n",
- "\n",
- "for i in range(10):\n",
- " t.append(i)\n",
- " \n",
- "#Printing without passing entire list\n",
- "for i in range(10):\n",
- " display(t[i])"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 1 2 3 4 5 6 7 8 9\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.10, Page Number: 139<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def cube(n,num):\n",
- " num-=1\n",
- " while num:\n",
- " n[num]=n[num]*n[num]*n[num]\n",
- " num-=1\n",
- "\n",
- "#Variable declaration\n",
- "nums=[]\n",
- "\n",
- "for i in range(10):\n",
- " nums.append(i+1)\n",
- " \n",
- "print \"Original contents: \",\n",
- "for i in range(10):\n",
- " print nums[i],\n",
- "print\n",
- "\n",
- "cube(nums,10) #Compute cubes\n",
- "\n",
- "#Result\n",
- "print \"Altered contents: \",\n",
- "for i in range(10):\n",
- " print nums[i],"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Original contents: 1 2 3 4 5 6 7 8 9 10\n",
- "Altered contents: 1 8 27 64 125 216 343 512 729 1000\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.11, Page Number: 140<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "def stringupper(str):\n",
- " str=string.upper(str) #convert to uppercase\n",
- " return str\n",
- "\n",
- "#Variable declaration \n",
- "str=\"this is a test\"\n",
- "\n",
- "#Calling the function\n",
- "str=stringupper(str)\n",
- "\n",
- "#Result\n",
- "print str"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "THIS IS A TEST\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.12, Page Number: 141<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def mystrlen(str):\n",
- " l=len(str)\n",
- " return l\n",
- "\n",
- "#Result\n",
- "print \"Length of Hello There is: \",\n",
- "print mystrlen(\"Hello There\")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Length of Hello There is: 11\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.13, Page Number: 142<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import sys\n",
- "\n",
- "def main():\n",
- " if len(sys.argv)!=2:\n",
- " print \"You forgot to type your name.\" #CHECK!!!!\n",
- " return\n",
- " #Result\n",
- " print \"Hello \",sys.argv[1]\n",
- "\n",
- "main()"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "You forgot to type your name.\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.14, Page Number: 143<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "import sys\n",
- "\n",
- "#Result\n",
- "for t in range(len(sys.argv)):\n",
- " i=0\n",
- " print sys.argv[t] "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "-c\n",
- "-f\n",
- "C:\\Users\\Anandi\\.ipython\\profile_default\\security\\kernel-6e851974-75ff-4911-bdf9-e089a03e5741.json\n",
- "--KernelApp.parent_appname='ipython-notebook'\n",
- "--interrupt=904\n",
- "--parent=876\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.15, Page Number: 144<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import sys\n",
- "\n",
- "if len(sys.argv)!=3:\n",
- " print \"usage: add num num\" \n",
- "else :\n",
- " #Variable Decleration\n",
- " a=sys.argv[1]\n",
- " b=sys.argv[2]\n",
- " #Result\n",
- " print a+b\n",
- " \n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "usage: add num num\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.16, Page Number: 145<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import string\n",
- "\n",
- "#Variable Decleration\n",
- "i=string.atoi(\"100\")\n",
- "j=string.atoi(\"100000\")\n",
- "k=string.atof(\"-0.123\")\n",
- "\n",
- "#Result\n",
- "print i,\" \",j,\" \",k"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100 100000 -0.123\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.17, Page Number: 147<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Decleration\n",
- "i=abs(-10)\n",
- "\n",
- "#Result\n",
- "print abs(-23)\n",
- "abs(100)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "23\n"
- ]
- },
- {
- "metadata": {},
- "output_type": "pyout",
- "prompt_number": 5,
- "text": [
- "100"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.18, Page Number: 148<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def find_substr(sub,str):\n",
- " l=str.find(sub)\n",
- " return l\n",
- "\n",
- "#Variable decleration;Calling the function\n",
- "index=find_substr(\"three\",\"one two three four\")\n",
- "\n",
- "#Result\n",
- "print \"Index of three is \",index"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Index of three is 8\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.19, Page Number: 149<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "import sys\n",
- "\n",
- "def print_vertical(str):\n",
- " l=len(str)\n",
- " for i in range(l):\n",
- " print str[i],\n",
- " \n",
- "print_vertical(sys.argv[1])\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "- f\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.20, Page Number: 150<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def find_substr(sub,str):\n",
- " return str.find(sub)\n",
- "\n",
- "#Variable declaration\n",
- "s=\"one two three four\"\n",
- "\n",
- "substr = find_substr(\"three\",s)\n",
- "\n",
- "#Result\n",
- "print \"substring found:\",s[substr:]\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "substring found: three four\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.21, Page Number: 154<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def factr(n):\n",
- " if n==1:\n",
- " return 1\n",
- " answer=factr(n-1)*n\n",
- " return answer\n",
- "\n",
- "#Iterative version\n",
- "def fact(n):\n",
- " answer=1\n",
- " for t in range(n):\n",
- " answer=answer*(t+1)\n",
- " return answer\n",
- "\n",
- "#Using recursion version\n",
- "print \"4 factorial is \",factr(4)\n",
- "\n",
- "#Using iterative version\n",
- "print \"4 factorial is \",fact(4)\n",
- "\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "4 factorial is 24\n",
- "4 factorial is 24\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 7.22, Page Number: 155<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def reverse(s):\n",
- " r = \"\"\n",
- " for c in s:\n",
- " r=c+r\n",
- " print r\n",
- " \n",
- "#VariabDecleration \n",
- "str=\"this is a test\"\n",
- "\n",
- "#Calling function\n",
- "reverse(str)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "tset a si siht\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_8(1).ipynb b/C++_from_the_Ground/Chapter_8(1).ipynb
deleted file mode 100755
index 4684861e..00000000
--- a/C++_from_the_Ground/Chapter_8(1).ipynb
+++ /dev/null
@@ -1,1783 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:cb32b4e80623f372b375323b458cf1a594dc5626da9cbe9346e1ec33417221d4"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 8: Functions,Part Two: References, Overloading, and Default Arguments<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.1, Page Number: 158<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def sqr_it(x):\n",
- " x=x*x\n",
- " return x\n",
- "\n",
- "#Variable decleration\n",
- "t=10\n",
- "\n",
- "#Result; function calling\n",
- "print sqr_it(t),' ',t\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100 10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.2, Page Number: 159<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def swap(x,y):\n",
- " temp=x\n",
- " x=y\n",
- " y=temp\n",
- " return x, y\n",
- "\n",
- "#Variable decleration\n",
- "i=10\n",
- "j=20 \n",
- "\n",
- "#Initial values\n",
- "print \"Initial values of i and j: \",\n",
- "print i,' ',j\n",
- "\n",
- "#Calling function to swap\n",
- "i, j=swap(i,j)\n",
- "\n",
- "#Result\n",
- "print \"Swapped values of i and j: \",\n",
- "print i,' ',j"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Initial values of i and j: 10 20\n",
- "Swapped values of i and j: 20 10\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.3, Page Number: 161<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def f(i):\n",
- " i=10\n",
- " return i #Returning the value since the function cannot access the variables in the calling scope.\n",
- "\n",
- "#Variable Decleration\n",
- "val=1\n",
- "\n",
- "print \"Old value for val: \",val\n",
- "val=f(val) #Function call\n",
- "\n",
- "#Result\n",
- "print \"New value for val: \",val\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Old value for val: 1\n",
- "New value for val: 10\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.4, Page Number: 162<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def swap(i,j):\n",
- " temp=i[0]\n",
- " i[0]=j[0]\n",
- " j[0]=temp\n",
- " return i, j\n",
- "\n",
- "#Variable decleration\n",
- "i=[]\n",
- "j=[]\n",
- "i.append(10)\n",
- "j.append(20)\n",
- "\n",
- "#Initial values\n",
- "print \"Initial values of i and j: \",\n",
- "print i[0],' ',j[0]\n",
- "\n",
- "#Calling function to swap\n",
- "i, j=swap(i,j)\n",
- "\n",
- "#Result\n",
- "print \"Swapped values of i and j: \",\n",
- "print i[0],' ',j[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Initial values of i and j: 10 20\n",
- "Swapped values of i and j: 20 10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.5, Page Number: 164<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Decleration\n",
- "val = 100.0\n",
- "\n",
- "def f():\n",
- " global val\n",
- " return val\n",
- "\n",
- "#Result\n",
- "print val\n",
- "\n",
- "newval=f() #function call\n",
- "print newval\n",
- "\n",
- "val=99.1 #change val's value\n",
- "print f() #print val's new value\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100.0\n",
- "100.0\n",
- "99.1\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.6, Page Number: 166<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Function definition\n",
- "def change_it(i,n):\n",
- " global vals\n",
- " vals[i]=n\n",
- "\n",
- "#Variable Decleration\n",
- "vals=[1.1,2.2,3.3,4.4,5.5]\n",
- "\n",
- "print \"Here are the original values: \",\n",
- "for i in range(5):\n",
- " print vals[i],\n",
- "print\n",
- " \n",
- "#Function call\n",
- "change_it(1,5298.23)\n",
- "change_it(3,-98.8)\n",
- "\n",
- "#Result\n",
- "print \"Here are the changed values: \",\n",
- "for i in range(5):\n",
- " print vals[i],"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Here are the original values: 1.1 2.2 3.3 4.4 5.5\n",
- "Here are the changed values: 1.1 5298.23 3.3 -98.8 5.5\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.7, Page Number: 167<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Decleration\n",
- "vals=[None]*10\n",
- "error=-1\n",
- "\n",
- "#put values into the array\n",
- "def put(i,n):\n",
- " global vals\n",
- " if i>=0 and i<10:\n",
- " vals[i]=n\n",
- " else:\n",
- " print \"Bounds Error!\"\n",
- " error=n\n",
- "\n",
- "#obtain a value from the array\n",
- "def get(i):\n",
- " if i>=0 and i<10:\n",
- " return vals[i]\n",
- " else:\n",
- " print \"Bounds error!\"\n",
- " return -1\n",
- " \n",
- "#put values into the array\n",
- "put(0,10)\n",
- "put(1,20)\n",
- "put(9,30)\n",
- "\n",
- "#Result\n",
- "print get(0),' ',get(1),' ',get(9),\n",
- "\n",
- "#now, intentionally generate an errer\n",
- "put(12,1)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20 30 Bounds Error!\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.8, Page Number: 169<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Decleration\n",
- "i=[]\n",
- "j=i #independent reference\n",
- "\n",
- "j.append(10) #Here i and j are just references to [10]\n",
- "\n",
- "print j[0],\" \",i[0] \n",
- "\n",
- "k=121\n",
- "i[0]=k #copies k's value into j[0] \n",
- "\n",
- "#Result\n",
- "print j[0]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 10\n",
- "121\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.9, Page Number: 170<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def f(i,j=None):\n",
- " if j==None: \n",
- " if isinstance(i,int): #for 1st function\n",
- " print \"In f(int), i is \",i \n",
- " else: #for 3rd function\n",
- " print \"In f(double), k is \",i\n",
- " else: #for 2nd arguments\n",
- " print \"In f(int,int), i is \",i,\", j is \",j\n",
- " \n",
- "#calling function\n",
- "f(10)\n",
- "f(10,20)\n",
- "f(12.23)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "In f(int), i is 10\n",
- "In f(int,int), i is 10 , j is 20\n",
- "In f(double), k is 12.23\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.10, Page Number: 171<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def myabs(i):\n",
- " if isinstance(i,int): #first instance\n",
- " print \"Using integer myabs(): \",\n",
- " if i<0:\n",
- " return -i\n",
- " else:\n",
- " return i\n",
- " elif isinstance(i,float): #second instance\n",
- " print \"Using double myabs(): \",\n",
- " if(i<0.0):\n",
- " return -i\n",
- " else:\n",
- " return i\n",
- " elif isinstance(i,long): #third instance\n",
- " print \"Using long myabs(): \",\n",
- " if i<0:\n",
- " return -i\n",
- " else:\n",
- " return i\n",
- "\n",
- "#Result; calling the function \n",
- "print myabs(-10)\n",
- "print myabs(-11.0)\n",
- "print myabs(-9L)\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Using integer myabs(): 10\n",
- "Using double myabs(): 11.0\n",
- "Using long myabs(): 9\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.11, Page Number: 174<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "import os\n",
- "\n",
- "def clrscr(size=25):\n",
- " while(size):\n",
- " print \"\"\n",
- " size-=1\n",
- " \n",
- "for i in range(30):\n",
- " print i\n",
- " clrscr() #clears 25 lines\n",
- "\n",
- "for i in range(30):\n",
- " print i\n",
- " clrscr(10) #clears 10 lines\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "1\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "2\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "3\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "4\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "5\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "6\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "7\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "8\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "9\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "10\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "11\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "12\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "13\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "14\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "15\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "16\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "17\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "18\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "19\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "20\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "21\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "22\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "23\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "24\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "25\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "26\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "27\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "28\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "29\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "0\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "1\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "2\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "3\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "4\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "5\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "6\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "7\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "8\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "9\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "10\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "11\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "12\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "13\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "14\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "15\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "16\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "17\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "18\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "19\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "20\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "21\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "22\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "23\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "24\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "25\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "26\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "27\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "28\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- "29\n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " \n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.12, Page Number: 176<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Decleration\n",
- "str1 = \"This is a test\"\n",
- "str2 = \"0123456789\"\n",
- "\n",
- "#function for concatenation\n",
- "def mystrcat(s1,s2,l=-1):\n",
- " if l==-1:\n",
- " l=len(str2)\n",
- " s2=s2[:l] #truncates s2\n",
- " s1=s1+s2 #concatenates the 2 strings\n",
- " return s1\n",
- "\n",
- "str1=mystrcat(str1,str2,5) #concatenate 5 chars\n",
- "print str1\n",
- "\n",
- "str1 = \"this is a test\" #reset str1\n",
- "\n",
- "str1=mystrcat(str1, str2) #concatenate entire string\n",
- "print str1"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "This is a test01234\n",
- "this is a test0123456789\n"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.13, Page Number: 177<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def myfunc(i):\n",
- " return i\n",
- " \n",
- "print myfunc(10.1),\n",
- "print myfunc(10)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10.1 10\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.14, Page Number: 178<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "def myfunc(ch):\n",
- " if isinstance(ch,c_int):\n",
- " return chr(ch.value+1)\n",
- " elif isinstance(ch,c_uint):\n",
- " return chr(ch.value-1)\n",
- " \n",
- " \n",
- "print myfunc(c_int(ord('c'))),\n",
- "print myfunc(c_uint(88))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- " d W\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 8.15, Page Number: 179<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def myfunc(i,j=1):\n",
- " if j==1:\n",
- " return i*j\n",
- " else:\n",
- " return i\n",
- " \n",
- " \n",
- "print myfunc(4,5),\n",
- "print myfunc(10)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "4 10\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file
diff --git a/C++_from_the_Ground/Chapter_9(1).ipynb b/C++_from_the_Ground/Chapter_9(1).ipynb
deleted file mode 100755
index 0f30e9a8..00000000
--- a/C++_from_the_Ground/Chapter_9(1).ipynb
+++ /dev/null
@@ -1,813 +0,0 @@
-{
- "metadata": {
- "name": "",
- "signature": "sha256:441f69a4dc3d0bee097a6151c42e10920892966ba4b3b82086ec3feb521e7da7"
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h1>Chapter 9: More Data Types and Operations<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.1, Page Number: 182<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def code(str):\n",
- " print str\n",
- "\n",
- "#Calling function\n",
- "code(\"this is a test\")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "this is a test\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.2, Page Number: 183<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "def f(i):\n",
- " i=100\n",
- " print i\n",
- " \n",
- "#Variable declaration\n",
- "k=10\n",
- "\n",
- "#function call\n",
- "f(k)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.3, Page Number: 187<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable Declaration\n",
- "first=10 #global definition of first and last\n",
- "last=20\n",
- "\n",
- "#Result\n",
- "print first,last\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 20\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.4, Page Number: 188<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "sum=0 \n",
- "count=0\n",
- "num=5 #Loop for user entries\n",
- "\n",
- "#compute a running average\n",
- "def r_avg(i):\n",
- " global sum,count\n",
- " sum=sum+i\n",
- " count+=1\n",
- " return sum/count\n",
- "\n",
- "\n",
- "while True:\n",
- " print \"Enter numbers(-1 to quit): \"\n",
- " num-=1 #User input\n",
- " if not(num==-1):\n",
- " print \"Running average is: \",r_avg(num) #Result\n",
- " if num<0:\n",
- " break"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter numbers(-1 to quit): \n",
- "Running average is: 4\n",
- "Enter numbers(-1 to quit): \n",
- "Running average is: 3\n",
- "Enter numbers(-1 to quit): \n",
- "Running average is: 3\n",
- "Enter numbers(-1 to quit): \n",
- "Running average is: 2\n",
- "Enter numbers(-1 to quit): \n",
- "Running average is: 2\n",
- "Enter numbers(-1 to quit): \n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.5, Page Number: 189<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "sum=0 \n",
- "count=0\n",
- "num=10 #Loop for user entries\n",
- "\n",
- "#user input given: 9,8,7,6,-2,4,3,2,1,-1\n",
- "\n",
- "#compute a running average\n",
- "def r_avg(i):\n",
- " global sum,count\n",
- " sum=sum+i\n",
- " count+=1\n",
- " return sum/count\n",
- "\n",
- "def reset():\n",
- " global sum,count\n",
- " sum=0\n",
- " count=0\n",
- " \n",
- "while True:\n",
- " print \"Enter numbers(-1 to quit, -2 to reset): \"\n",
- " num-=1 #User input\n",
- " if num==5:\n",
- " num=-2\n",
- " if num==-2: #for reset\n",
- " num=4\n",
- " reset()\n",
- " continue\n",
- " if not(num==-1):\n",
- " print \"Running average is: \",r_avg(num) #Result\n",
- " else:\n",
- " break"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 9\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 8\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 8\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 7\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 3\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 2\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 2\n",
- "Enter numbers(-1 to quit, -2 to reset): \n",
- "Running average is: 1\n",
- "Enter numbers(-1 to quit, -2 to reset): \n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.6, Page Number: 196<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "name=[\"Jonathan\",\"Golden Delicious\",\"Red Delicious\",\"Winesap\",\n",
- " \"Cortland\",\"McIntosh\"]\n",
- "\n",
- "#enumeration type\n",
- "(Jonathan,Golden_Delicious,Red_Delicious,Winesap,Cortland,McIntosh) = (0,1,2,3,4,5)\n",
- "\n",
- "fruit=Jonathan\n",
- "print name[fruit]\n",
- "\n",
- "fruit = Winesap\n",
- "print name[fruit]\n",
- "\n",
- "fruit = McIntosh\n",
- "print name[fruit]"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Jonathan\n",
- "Winesap\n",
- "McIntosh\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.7, Page Number: 198<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "ch='j' #User input\n",
- "while True:\n",
- " #This statement turns off the 6th but.\n",
- " c=chr(ord(ch)&223) #ch is now uppercase\n",
- " print c\n",
- " if c=='Q':\n",
- " break \n",
- " else:\n",
- " ch = chr(ord(ch)+1) #incrementing for different user inputs\n",
- " \n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "J\n",
- "K\n",
- "L\n",
- "M\n",
- "N\n",
- "O\n",
- "P\n",
- "Q\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.8, Page Number: 200<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "#Variable declaration\n",
- "ch='J' #User input\n",
- "while True:\n",
- " #This statement turns off the 6th but.\n",
- " c=chr(ord(ch)|32) #ch is now uppercase\n",
- " print c\n",
- " if c=='q':\n",
- " break \n",
- " else:\n",
- " ch = chr(ord(ch)+1) #incrementing for different user inputs\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "j\n",
- "k\n",
- "l\n",
- "m\n",
- "n\n",
- "o\n",
- "p\n",
- "q\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.9, Page Number: 201<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def disp_binary(u):\n",
- " t=128\n",
- " while t:\n",
- " if u&t:\n",
- " print 1,\n",
- " else:\n",
- " print 0,\n",
- " t=t/2\n",
- " print \"\"\n",
- " \n",
- "#Variable declaration\n",
- "u=99 #User Input\n",
- "\n",
- "print \"Here's the number in binary: \",\n",
- "disp_binary(u)\n",
- "\n",
- "print \"Here's the complement of th number: \",\n",
- "disp_binary(~u)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Here's the number in binary: 0 1 1 0 0 0 1 1 \n",
- "Here's the complement of th number: 1 0 0 1 1 1 0 0 \n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.10, Page Number: 202<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- " \n",
- "def disp_binary(u):\n",
- " t=128\n",
- " while t:\n",
- " if u&t:\n",
- " print 1,\n",
- " else:\n",
- " print 0,\n",
- " t=t/2\n",
- " print \"\"\n",
- " \n",
- "#Variable dclaration\n",
- "i=1\n",
- "\n",
- "#Result\n",
- "for t in range(8):\n",
- " disp_binary(i)\n",
- " i=i<<1\n",
- "\n",
- "print\"\\n\"\n",
- "\n",
- "for t in range(8):\n",
- " i=i>>1\n",
- " disp_binary(i)\n",
- " "
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "0 0 0 0 0 0 0 1 \n",
- "0 0 0 0 0 0 1 0 \n",
- "0 0 0 0 0 1 0 0 \n",
- "0 0 0 0 1 0 0 0 \n",
- "0 0 0 1 0 0 0 0 \n",
- "0 0 1 0 0 0 0 0 \n",
- "0 1 0 0 0 0 0 0 \n",
- "1 0 0 0 0 0 0 0 \n",
- "\n",
- "\n",
- "1 0 0 0 0 0 0 0 \n",
- "0 1 0 0 0 0 0 0 \n",
- "0 0 1 0 0 0 0 0 \n",
- "0 0 0 1 0 0 0 0 \n",
- "0 0 0 0 1 0 0 0 \n",
- "0 0 0 0 0 1 0 0 \n",
- "0 0 0 0 0 0 1 0 \n",
- "0 0 0 0 0 0 0 1 \n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.11, Page Number: 204<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "def div_zero():\n",
- " print \"Cannot divide by zero.\"\n",
- " return 0\n",
- " \n",
- "#Variable declaration\n",
- "i=10 #User Input\n",
- "j=0\n",
- "\n",
- "#This statement prevents a divide by zero\n",
- "if j:\n",
- " result=i/j\n",
- "else:\n",
- " result=div_zero()\n",
- "\n",
- "#Result\n",
- "print \"Result: \",result"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Cannot divide by zero.\n",
- "Result: 0\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.12, Page Number: 206<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "j=10\n",
- "i=None\n",
- "\n",
- "j+=1\n",
- "j+100\n",
- "i=999+j\n",
- "\n",
- "#Result\n",
- "print i"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1010\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.13, Page Number: 207<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "ch=c_char\n",
- "i=c_int\n",
- "\n",
- "print sizeof(ch), #size of char\n",
- "print sizeof(i), #size of int\n",
- "print sizeof(c_float), #size of float\n",
- "print sizeof(c_double) #size of double\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "1 4 4 8\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.14, Page Number: 209<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variabke declaration \n",
- "i=c_int(20) #allocate memory for int\n",
- "p=pointer(i) #assign a pointer to the memory\n",
- "\n",
- "#Result\n",
- "print p[0] #proove that it works by displaying value\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "20\n"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.15, Page Number: 210<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration \n",
- "i=c_int(99) #initialize with 99\n",
- "p=pointer(i) #assign a pointer to the value\n",
- "\n",
- "#Result\n",
- "print p[0] #displays 99\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "99\n"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.16, Page Number: 211<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration \n",
- "i=c_double(10) \n",
- "p=pointer(i)\n",
- "\n",
- "#assign the values 100 to 109\n",
- "for i in range(10):\n",
- " p[i]=100.00+i\n",
- "\n",
- "#display the contents of the array\n",
- "for i in range(10):\n",
- " print p[i],\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "100.0 101.0 102.0 103.0 104.0 105.0 106.0 107.0 108.0 109.0\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.17, Page Number: 211<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "#Variable declaration\n",
- "i=c_int() \n",
- "j=c_double()\n",
- "pi=pointer(i) #pointer to int\n",
- "pj=pointer(j) #pointer to double\n",
- "\n",
- "#Assign values using pointers\n",
- "pi[0]=10\n",
- "pj[0]=100.123\n",
- "\n",
- "#Result\n",
- "print pi[0],pj[0]\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 100.123\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "<h3>Example 9.18, Page Number: 212<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "\n",
- "from ctypes import *\n",
- "\n",
- "#Variable declaration\n",
- "i=pointer(c_int())\n",
- "j=pointer(c_double())\n",
- "\n",
- "#Checking if i and j have been allocated memory addresses\n",
- "if not(id(i)):\n",
- " print \"Allocation Failure.\"\n",
- " \n",
- "if not(id(j)):\n",
- " print \"Allocation Failure.\" \n",
- "\n",
- "i[0]=10\n",
- "j[0]=100.123\n",
- "\n",
- "\n",
- "#Result\n",
- "print i[0],j[0]\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "10 100.123\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [],
- "language": "python",
- "metadata": {},
- "outputs": []
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file