summaryrefslogtreecommitdiff
path: root/Schaum's_Outlines:_Programming_with_C++/ch5.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Schaum's_Outlines:_Programming_with_C++/ch5.ipynb')
-rwxr-xr-xSchaum's_Outlines:_Programming_with_C++/ch5.ipynb1746
1 files changed, 1746 insertions, 0 deletions
diff --git a/Schaum's_Outlines:_Programming_with_C++/ch5.ipynb b/Schaum's_Outlines:_Programming_with_C++/ch5.ipynb
new file mode 100755
index 00000000..1fddf23f
--- /dev/null
+++ b/Schaum's_Outlines:_Programming_with_C++/ch5.ipynb
@@ -0,0 +1,1746 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5: Functions\n"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1, Page no:87"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ "\n",
+ "# tests the sqrt() function:\n",
+ "for i in range(0,6):\n",
+ " print \"\\t %d \\t %f\" %(i,math.sqrt(i))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\t 0 \t 0.000000\n",
+ "\t 1 \t 1.000000\n",
+ "\t 2 \t 1.414214\n",
+ "\t 3 \t 1.732051\n",
+ "\t 4 \t 2.000000\n",
+ "\t 5 \t 2.236068\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.2, Page no:88"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ "# tests the identity sin 2x = 2 sin x cos x:\n",
+ "x = 0\n",
+ "while x < 2:\n",
+ " print \"%f \\t\\t %f \\t %f\" %(x,math.sin(2*x),2*math.sin(x)*math.cos(x))\n",
+ " x += 0.2\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.000000 \t\t 0.000000 \t 0.000000\n",
+ "0.200000 \t\t 0.389418 \t 0.389418\n",
+ "0.400000 \t\t 0.717356 \t 0.717356\n",
+ "0.600000 \t\t 0.932039 \t 0.932039\n",
+ "0.800000 \t\t 0.999574 \t 0.999574\n",
+ "1.000000 \t\t 0.909297 \t 0.909297\n",
+ "1.200000 \t\t 0.675463 \t 0.675463\n",
+ "1.400000 \t\t 0.334988 \t 0.334988\n",
+ "1.600000 \t\t -0.058374 \t -0.058374\n",
+ "1.800000 \t\t -0.442520 \t -0.442520\n",
+ "2.000000 \t\t -0.756802 \t -0.756802\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3, Page no:90"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def cube(x):\n",
+ " # returns cube of x:\n",
+ " return x*x*x\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.4, Page no:91"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def cube(x):\n",
+ " # returns cube of x:\n",
+ " return x*x*x\n",
+ "\n",
+ "# tests the cube() function:\n",
+ "n=1\n",
+ "while (n != 0):\n",
+ " n = int(raw_input())\n",
+ " print \"\\tcube( %d ) = %d\" %(n,cube(n))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "4\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tcube( 4 ) = 64\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tcube( 2 ) = 8\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "9\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tcube( 9 ) = 729\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tcube( 0 ) = 0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.5, Page no:90"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def maximum(x,y):\n",
+ " # returns larger of the two given integers:\n",
+ " if (x < y):\n",
+ " return y\n",
+ " else:\n",
+ " return x\n",
+ "\n",
+ "# tests the max() function:\n",
+ "m = 1\n",
+ "n = 1\n",
+ "while m != 0: \n",
+ " m = int(raw_input())\n",
+ " n = int(raw_input())\n",
+ " print \"\\tmax( %d , %d ) = %d\" %(m,n,maximum(m,n))\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax( 5 , 2 ) = 5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "3\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax( 0 , 3 ) = 3\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.6, Page no:93"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def maximum(x,y):\n",
+ " # returns larger of the two given integers:\n",
+ " if (x < y):\n",
+ " return y\n",
+ " else:\n",
+ " return x\n",
+ "\n",
+ "# tests the max() function:\n",
+ "m = 1\n",
+ "n = 1\n",
+ "while m != 0: \n",
+ " m = int(raw_input())\n",
+ " n = int(raw_input())\n",
+ " print \"\\tmax( %d , %d ) = %d\" %(m,n,maximum(m,n))\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax( 5 , 2 ) = 5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "3\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax( 0 , 3 ) = 3\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.8, Page no:94"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "\n",
+ "# returns larger of the two given integers:\n",
+ "\n",
+ "m = 1\n",
+ "n = 1\n",
+ "while m!=0:\n",
+ " m = int(raw_input())\n",
+ " n = int(raw_input())\n",
+ " print \"\\tmax(%d,%d) = %d\" %(m,n, max(m,n))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "4\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax(5,4) = 5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "4\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "3\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax(4,3) = 4\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "8\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax(8,0) = 8\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\tmax(0,5) = 5\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.9, Page no:95"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def fact(n):\n",
+ " if (n < 0):\n",
+ " return 0\n",
+ " f = 1\n",
+ " while (n > 1):\n",
+ " f *= n\n",
+ " n -= 1\n",
+ " return f\n",
+ "\n",
+ "for i in range(-1,6):\n",
+ " print fact(i),\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0 1 1 2 6 24 120\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.10, Page no:95"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "def fact(n):\n",
+ " if (n < 0):\n",
+ " return 0\n",
+ " f = 1\n",
+ " while (n > 1):\n",
+ " f *= n\n",
+ " n -= 1\n",
+ " return f\n",
+ "\n",
+ "\n",
+ "def perm(n,k):\n",
+ " # returns P(n,k), the number of permutations of k from n:\n",
+ " if (n < 0 or k < 0 or k > n):\n",
+ " return 0\n",
+ " return fact(n)/fact(n-k)\n",
+ "\n",
+ "for i in range(-1,8):\n",
+ " for j in range(-1,i+2):\n",
+ " print perm(i,j),\n",
+ " print ''\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0 0 \n",
+ "0 1 0 \n",
+ "0 1 1 0 \n",
+ "0 1 2 2 0 \n",
+ "0 1 3 6 6 0 \n",
+ "0 1 4 12 24 24 0 \n",
+ "0 1 5 20 60 120 120 0 \n",
+ "0 1 6 30 120 360 720 720 0 \n",
+ "0 1 7 42 210 840 2520 5040 5040 0 \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.11, Page no:96"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def printDate(m,d,y):\n",
+ " # prints the given date in literal form:\n",
+ " if (m < 1 or m > 12 or d < 1 or d > 31 or y < 0):\n",
+ " print \"Error: parameter out of range.\\n\"\n",
+ " return\n",
+ " if m == 1:\n",
+ " print \"January \",\n",
+ " elif m ==2:\n",
+ " print \"February \",\n",
+ " elif m==3 :\n",
+ " print \"March \",\n",
+ " elif m==4:\n",
+ " print \"April \",\n",
+ " elif m==5:\n",
+ " print \"May \",\n",
+ " elif m==6:\n",
+ " print \"June \",\n",
+ " elif m==7:\n",
+ " print \"July \",\n",
+ " elif m==8:\n",
+ " print \"August \",\n",
+ " elif m==9:\n",
+ " print \"September \",\n",
+ " elif m==10:\n",
+ " print \"October \",\n",
+ " elif m==1:\n",
+ " print \"November \",\n",
+ " else:\n",
+ " print \"December \",\n",
+ " print d , \", \", y \n",
+ "\n",
+ "# tests the printDate() function:\n",
+ "month = 1\n",
+ "while month > 0:\n",
+ " month = int(raw_input())\n",
+ " day = int(raw_input())\n",
+ " year = int(raw_input())\n",
+ " printDate(month,day,year)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "9\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "12\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "1989\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "September 12 , 1989\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2001\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Error: parameter out of range.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.12, Page no:98"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import string\n",
+ "def ispunct(s):\n",
+ " return all(c in string.punctuation for c in s)\n",
+ "def printCharCategory(c):\n",
+ " # prints the category to which the given character belongs:\n",
+ " print \"The character [\" + c + \"] is a \",\n",
+ " if(c.isdigit()):\n",
+ " print \"digit.\\n\"\n",
+ " elif (c.islower()):\n",
+ " print \"lower-case letter.\\n\"\n",
+ " elif (c.isupper()): \n",
+ " print \"capital letter.\\n\"\n",
+ " elif (c.isspace()):\n",
+ " print \"white space character.\\n\"\n",
+ " elif (ord(c) >= 10 and ord(c) <= 15 or ord(c) == 0):\n",
+ " print \"control character.\\n\"\n",
+ " elif (ispunct(c)):\n",
+ " print \"punctuation mark.\\n\"\n",
+ " else:\n",
+ " print \"Error.\\n\"\n",
+ "\n",
+ "# prints the category to which the given character belongs;\n",
+ "# tests the printCharCategory() function:\n",
+ "for c in range(128):\n",
+ " printCharCategory(chr(c))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The character [\u0000] is a control character.\n",
+ "\n",
+ "The character [\u0001] is a Error.\n",
+ "\n",
+ "The character [\u0002] is a Error.\n",
+ "\n",
+ "The character [\u0003] is a Error.\n",
+ "\n",
+ "The character [\u0004] is a Error.\n",
+ "\n",
+ "The character [\u0005] is a Error.\n",
+ "\n",
+ "The character [\u0006] is a Error.\n",
+ "\n",
+ "The character [\u0007] is a Error.\n",
+ "\n",
+ "The character [\b] is a Error.\n",
+ "\n",
+ "The character [\t] is a white space character.\n",
+ "\n",
+ "The character [\n",
+ "] is a white space character.\n",
+ "\n",
+ "The character [\u000b",
+ "] is a white space character.\n",
+ "\n",
+ "The character [\f",
+ "] is a white space character.\n",
+ "\n",
+ "The character [\r",
+ "] is a white space character.\n",
+ "\n",
+ "The character [\u000e] is a control character.\n",
+ "\n",
+ "The character [\u000f] is a control character.\n",
+ "\n",
+ "The character [\u0010] is a Error.\n",
+ "\n",
+ "The character [\u0011] is a Error.\n",
+ "\n",
+ "The character [\u0012] is a Error.\n",
+ "\n",
+ "The character [\u0013] is a Error.\n",
+ "\n",
+ "The character [\u0014] is a Error.\n",
+ "\n",
+ "The character [\u0015] is a Error.\n",
+ "\n",
+ "The character [\u0016] is a Error.\n",
+ "\n",
+ "The character [\u0017] is a Error.\n",
+ "\n",
+ "The character [\u0018] is a Error.\n",
+ "\n",
+ "The character [\u0019] is a Error.\n",
+ "\n",
+ "The character [\u001a] is a Error.\n",
+ "\n",
+ "The character [\u001b] is a Error.\n",
+ "\n",
+ "The character [\u001c",
+ "] is a Error.\n",
+ "\n",
+ "The character [\u001d",
+ "] is a Error.\n",
+ "\n",
+ "The character [\u001e",
+ "] is a Error.\n",
+ "\n",
+ "The character [\u001f] is a Error.\n",
+ "\n",
+ "The character [ ] is a white space character.\n",
+ "\n",
+ "The character [!] is a punctuation mark.\n",
+ "\n",
+ "The character [\"] is a punctuation mark.\n",
+ "\n",
+ "The character [#] is a punctuation mark.\n",
+ "\n",
+ "The character [$] is a punctuation mark.\n",
+ "\n",
+ "The character [%] is a punctuation mark.\n",
+ "\n",
+ "The character [&] is a punctuation mark.\n",
+ "\n",
+ "The character ['] is a punctuation mark.\n",
+ "\n",
+ "The character [(] is a punctuation mark.\n",
+ "\n",
+ "The character [)] is a punctuation mark.\n",
+ "\n",
+ "The character [*] is a punctuation mark.\n",
+ "\n",
+ "The character [+] is a punctuation mark.\n",
+ "\n",
+ "The character [,] is a punctuation mark.\n",
+ "\n",
+ "The character [-] is a punctuation mark.\n",
+ "\n",
+ "The character [.] is a punctuation mark.\n",
+ "\n",
+ "The character [/] is a punctuation mark.\n",
+ "\n",
+ "The character [0] is a digit.\n",
+ "\n",
+ "The character [1] is a digit.\n",
+ "\n",
+ "The character [2] is a digit.\n",
+ "\n",
+ "The character [3] is a digit.\n",
+ "\n",
+ "The character [4] is a digit.\n",
+ "\n",
+ "The character [5] is a digit.\n",
+ "\n",
+ "The character [6] is a digit.\n",
+ "\n",
+ "The character [7] is a digit.\n",
+ "\n",
+ "The character [8] is a digit.\n",
+ "\n",
+ "The character [9] is a digit.\n",
+ "\n",
+ "The character [:] is a punctuation mark.\n",
+ "\n",
+ "The character [;] is a punctuation mark.\n",
+ "\n",
+ "The character [<] is a punctuation mark.\n",
+ "\n",
+ "The character [=] is a punctuation mark.\n",
+ "\n",
+ "The character [>] is a punctuation mark.\n",
+ "\n",
+ "The character [?] is a punctuation mark.\n",
+ "\n",
+ "The character [@] is a punctuation mark.\n",
+ "\n",
+ "The character [A] is a capital letter.\n",
+ "\n",
+ "The character [B] is a capital letter.\n",
+ "\n",
+ "The character [C] is a capital letter.\n",
+ "\n",
+ "The character [D] is a capital letter.\n",
+ "\n",
+ "The character [E] is a capital letter.\n",
+ "\n",
+ "The character [F] is a capital letter.\n",
+ "\n",
+ "The character [G] is a capital letter.\n",
+ "\n",
+ "The character [H] is a capital letter.\n",
+ "\n",
+ "The character [I] is a capital letter.\n",
+ "\n",
+ "The character [J] is a capital letter.\n",
+ "\n",
+ "The character [K] is a capital letter.\n",
+ "\n",
+ "The character [L] is a capital letter.\n",
+ "\n",
+ "The character [M] is a capital letter.\n",
+ "\n",
+ "The character [N] is a capital letter.\n",
+ "\n",
+ "The character [O] is a capital letter.\n",
+ "\n",
+ "The character [P] is a capital letter.\n",
+ "\n",
+ "The character [Q] is a capital letter.\n",
+ "\n",
+ "The character [R] is a capital letter.\n",
+ "\n",
+ "The character [S] is a capital letter.\n",
+ "\n",
+ "The character [T] is a capital letter.\n",
+ "\n",
+ "The character [U] is a capital letter.\n",
+ "\n",
+ "The character [V] is a capital letter.\n",
+ "\n",
+ "The character [W] is a capital letter.\n",
+ "\n",
+ "The character [X] is a capital letter.\n",
+ "\n",
+ "The character [Y] is a capital letter.\n",
+ "\n",
+ "The character [Z] is a capital letter.\n",
+ "\n",
+ "The character [[] is a punctuation mark.\n",
+ "\n",
+ "The character [\\] is a punctuation mark.\n",
+ "\n",
+ "The character []] is a punctuation mark.\n",
+ "\n",
+ "The character [^] is a punctuation mark.\n",
+ "\n",
+ "The character [_] is a punctuation mark.\n",
+ "\n",
+ "The character [`] is a punctuation mark.\n",
+ "\n",
+ "The character [a] is a lower-case letter.\n",
+ "\n",
+ "The character [b] is a lower-case letter.\n",
+ "\n",
+ "The character [c] is a lower-case letter.\n",
+ "\n",
+ "The character [d] is a lower-case letter.\n",
+ "\n",
+ "The character [e] is a lower-case letter.\n",
+ "\n",
+ "The character [f] is a lower-case letter.\n",
+ "\n",
+ "The character [g] is a lower-case letter.\n",
+ "\n",
+ "The character [h] is a lower-case letter.\n",
+ "\n",
+ "The character [i] is a lower-case letter.\n",
+ "\n",
+ "The character [j] is a lower-case letter.\n",
+ "\n",
+ "The character [k] is a lower-case letter.\n",
+ "\n",
+ "The character [l] is a lower-case letter.\n",
+ "\n",
+ "The character [m] is a lower-case letter.\n",
+ "\n",
+ "The character [n] is a lower-case letter.\n",
+ "\n",
+ "The character [o] is a lower-case letter.\n",
+ "\n",
+ "The character [p] is a lower-case letter.\n",
+ "\n",
+ "The character [q] is a lower-case letter.\n",
+ "\n",
+ "The character [r] is a lower-case letter.\n",
+ "\n",
+ "The character [s] is a lower-case letter.\n",
+ "\n",
+ "The character [t] is a lower-case letter.\n",
+ "\n",
+ "The character [u] is a lower-case letter.\n",
+ "\n",
+ "The character [v] is a lower-case letter.\n",
+ "\n",
+ "The character [w] is a lower-case letter.\n",
+ "\n",
+ "The character [x] is a lower-case letter.\n",
+ "\n",
+ "The character [y] is a lower-case letter.\n",
+ "\n",
+ "The character [z] is a lower-case letter.\n",
+ "\n",
+ "The character [{] is a punctuation mark.\n",
+ "\n",
+ "The character [|] is a punctuation mark.\n",
+ "\n",
+ "The character [}] is a punctuation mark.\n",
+ "\n",
+ "The character [~] is a punctuation mark.\n",
+ "\n",
+ "The character [\u007f] is a Error.\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.13, Page no:99"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ "def isPrime(n):\n",
+ " # returns True if n is prime, False otherwise:\n",
+ " sqrtn = math.sqrt(n)\n",
+ " if (n < 2):\n",
+ " return False\n",
+ " # 0 and 1 are not primes\n",
+ " if (n < 4):\n",
+ " return True\n",
+ " # 2 and 3 are the first primes\n",
+ " if (n%2 == 0):\n",
+ " return False\n",
+ " # 2 is the only even prime\n",
+ " for d in range(3,int(sqrtn+1),2):\n",
+ " if (n%d == 0):\n",
+ " return False\n",
+ " # n has a nontrivial divisor\n",
+ " return True;\n",
+ "\n",
+ "for n in range(0,80):\n",
+ " if (isPrime(n)):\n",
+ " print n,\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.14, Page no:100"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "def isLeapYear(y):\n",
+ " # returns true iff y is a leap year:\n",
+ " return (y % 4 == 0 and y % 100 != 0 or y % 400 == 0)\n",
+ "\n",
+ "# tests the isLeapYear() function:\n",
+ "n = 2\n",
+ "while n > 1:\n",
+ " n = int(raw_input())\n",
+ " if (isLeapYear(n)):\n",
+ " print \"%d is a leap year.\" % n\n",
+ " else:\n",
+ " print \"%d is not a leap year.\" %n\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2004\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2004 is a leap year.\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2006\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2006 is not a leap year.\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2013\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2013 is not a leap year.\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0 is a leap year.\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.15, Page no: 101"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def age():\n",
+ " # prompts the user to input his/her age, and returns that value:\n",
+ " while (True):\n",
+ " print \"How old are you: \"\n",
+ " n = int(raw_input())\n",
+ " if (n < 0):\n",
+ " print \"\\a\\tYour age could not be negative.\"\n",
+ " elif (n > 120):\n",
+ " print \"\\a\\tYou could not be over 120.\"\n",
+ " else:\n",
+ " return n\n",
+ " print \"\\n\\tTry again.\\n\"\n",
+ "\n",
+ "a = age();\n",
+ "print \"\\nYou are %d years old.\" %a\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "How old are you: \n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "-12\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\u0007\tYour age could not be negative.\n",
+ "\n",
+ "\tTry again.\n",
+ "\n",
+ "How old are you: \n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "125\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\u0007\tYou could not be over 120.\n",
+ "\n",
+ "\tTry again.\n",
+ "\n",
+ "How old are you: \n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "24\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "You are 24 years old.\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.16, Page no: 102"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def swap(x,y):\n",
+ " # exchanges the values of x and y:\n",
+ " x[0],y[0] = y[0],x[0]\n",
+ "\n",
+ "a = [22.2]\n",
+ "b = [44.4]\n",
+ "print \"a = %.2f , b = %.2f \" %(a[0],b[0])\n",
+ "swap(a,b)\n",
+ "print \"a = %.2f , b = %.2f \" %(a[0],b[0])\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a = 22.20 , b = 44.40 \n",
+ "a = 44.40 , b = 22.20 \n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.17, Page no: 104"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "'''\n",
+ "Note : Python doesn't support pass value by reference. but can be done by passing list.\n",
+ "'''\n",
+ "\n",
+ "def f(x,y):\n",
+ " x[0]= 88\n",
+ " y[0] = 99\n",
+ "\n",
+ "# tests the f() function:\n",
+ "a = [22]\n",
+ "b = [44]\n",
+ "print \"a = %.2f , b = %.2f \" %(a[0],b[0])\n",
+ "f(a,b)\n",
+ "print \"a = %.2f , b = %.2f \" %(a[0],b[0])\n",
+ "f(2*a,b)\n",
+ "print \"a = %.2f , b = %.2f \" %(a[0],b[0])\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a = 22.00 , b = 44.00 \n",
+ "a = 88.00 , b = 99.00 \n",
+ "a = 88.00 , b = 99.00 \n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.18, Page no: 105"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def computeCircle(r):\n",
+ " # returns the area and circumference of a circle with radius r:\n",
+ " PI = 3.141592653589793\n",
+ " area = PI*r*r\n",
+ " circumference = 2*PI*r\n",
+ " return area,circumference\n",
+ "\n",
+ "# tests the computeCircle() function:\n",
+ "print \"Enter radius: \"\n",
+ "r = int(raw_input())\n",
+ "a,c = computeCircle(r)\n",
+ "print \"area = %.2f , circumference = %.2f\" %(a,c)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Enter radius: \n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "area = 78.54 , circumference = 31.42\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.19, Page no: 106"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "'''\n",
+ "Note : Python passes variable by value and not by reference. So output would be differ.\n",
+ "'''\n",
+ "\n",
+ "\n",
+ "def f(x,y,z):\n",
+ " x[0] += z[0]\n",
+ " y[0] += z[0]\n",
+ " print \"x = %d , y = %d , z = %d\" %(x[0],y[0],z[0])\n",
+ "\n",
+ "x = [22]\n",
+ "y = [33]\n",
+ "z = [44]\n",
+ "\n",
+ "print \"x = %d , y = %d , z = %d\" %(x[0],y[0],z[0])\n",
+ "f(x,y,z)\n",
+ "print \"x = %d , y = %d , z = %d\" %(x[0],y[0],z[0])\n",
+ "x[0] = 2*x[0] - 3\n",
+ "f(x,y,z)\n",
+ "print \"x = %d , y = %d , z = %d\" %(x[0],y[0],z[0])\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "x = 22 , y = 33 , z = 44\n",
+ "x = 66 , y = 77 , z = 44\n",
+ "x = 66 , y = 77 , z = 44\n",
+ "x = 173 , y = 121 , z = 44\n",
+ "x = 173 , y = 121 , z = 44\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.20, Page no: 107"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "def cube(x):\n",
+ " # returns cube of x:\n",
+ " return x*x*x\n",
+ "\n",
+ "# tests the cube() function:\n",
+ "print cube(4)\n",
+ "x = int(raw_input())\n",
+ "y = cube(2*x-3)\n",
+ "print y\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "64\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "5\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "343\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.21, Page no: 108"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "'''\n",
+ "Python has it's own scope so output would be differ.\n",
+ "'''\n",
+ "x = 11\n",
+ "\n",
+ "def f():\n",
+ " x = 44\n",
+ " print \"In f(): x = %d\" % x \n",
+ "\n",
+ "def g():\n",
+ " print \"In g(): x = %d\" % x \n",
+ "\n",
+ "x = 22\n",
+ "x = 33\n",
+ "print \"In block inside main(): x = %d\" % x\n",
+ "\n",
+ "\n",
+ "print \"In main(): x = %d\" % x \n",
+ "print \"In main(): ::x = %d\" % x \n",
+ "f()\n",
+ "g()\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In block inside main(): x = 33\n",
+ "In main(): x = 33\n",
+ "In main(): ::x = 33\n",
+ "In f(): x = 44\n",
+ "In g(): x = 33\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.22, Page no: 109"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def max_(x, y,z=0):\n",
+ " if x > y and x > y:\n",
+ " return x\n",
+ " elif y > x and y > z:\n",
+ " return y\n",
+ " else:\n",
+ " return z\n",
+ " \n",
+ " \n",
+ "print max(99,77), \" \" , max(55,66,33)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "99 66\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.23, Page no: 110"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# prints the quotient of two input integers:\n",
+ "print \"Enter two integers: \"\n",
+ "n = int(raw_input())\n",
+ "d = int(raw_input())\n",
+ "if (d == 0):\n",
+ " import sys\n",
+ " sys.exit(0)\n",
+ "print n , \"/\" , d , \" = \" , n/d \n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Enter two integers: \n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "8\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "2\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "8 / 2 = 4\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.24, Page no: 110"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def reciprocal(x):\n",
+ " #returns the reciprocal of x:\n",
+ " if (x == 0):\n",
+ " import sys\n",
+ " sys.exit(1); # terminate the program\n",
+ " return 1.0/x\n",
+ "\n",
+ "x = float(raw_input())\n",
+ "print reciprocal(x)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "25\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.04\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.25, Page no: 111"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "'''\n",
+ "This function evaluates the third degree polynomial a0 + a1x + a2x2 + a3x3. \n",
+ "'''\n",
+ "def p(x,a0,a1=0,a2=0,a3=0):\n",
+ " # returns a0 + a1*x + a2*x^2 + a3*x^3:\n",
+ " return (a0 + (a1 + (a2 + a3*x)*x)*x)\n",
+ "\n",
+ "\n",
+ "# tests the p() function:\n",
+ "x = 2.0003\n",
+ "print \"p(x,7) = %f\" % p(x,7)\n",
+ "print \"p(x,7,6) = %f\" % p(x,7,6)\n",
+ "print \"p(x,7,6,5) = %f\" % p(x,7,6,5)\n",
+ "print \"p(x,7,6,5,4) = %f\" % p(x,7,6,5,4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "p(x,7) = 7.000000\n",
+ "p(x,7,6) = 19.001800\n",
+ "p(x,7,6,5) = 39.007800\n",
+ "p(x,7,6,5,4) = 71.022203\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file