summaryrefslogtreecommitdiff
path: root/C++_Programming_In_Easy_Steps/Chapter9.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'C++_Programming_In_Easy_Steps/Chapter9.ipynb')
-rwxr-xr-xC++_Programming_In_Easy_Steps/Chapter9.ipynb316
1 files changed, 316 insertions, 0 deletions
diff --git a/C++_Programming_In_Easy_Steps/Chapter9.ipynb b/C++_Programming_In_Easy_Steps/Chapter9.ipynb
new file mode 100755
index 00000000..18bdfd17
--- /dev/null
+++ b/C++_Programming_In_Easy_Steps/Chapter9.ipynb
@@ -0,0 +1,316 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:53d2aae81c824182838b074246429ee4c039bafa2ea2a0b5b38839beb8288df9"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9: Processing macros"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.1, Page No.153"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "print \"This is a simple test program\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "This is a simple test program\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.2, Page No.154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "BOOK=\"C++ Programming in easy steps\"\n",
+ "NUM=200\n",
+ "RULE=\"*****************************\"\n",
+ "print RULE\n",
+ "print BOOK\n",
+ "print RULE\n",
+ "print \"NUM is:\",NUM\n",
+ "print \"Double NUM:\",NUM*2"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "*****************************\n",
+ "C++ Programming in easy steps\n",
+ "*****************************\n",
+ "NUM is: 200\n",
+ "Double NUM: 400\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3, Page No.156"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "if not 'BOOK' in locals():\n",
+ " BOOK=\"C++ Programming in easy steps\"\n",
+ "\n",
+ "print BOOK,\n",
+ "if not 'AUTHOR' in locals():\n",
+ " AUTHOR=\"Mike McGrath\"\n",
+ "print \" by \",AUTHOR\n",
+ "if not 'BOOK' in locals():\n",
+ " BOOK=\"\"\n",
+ "if 'BOOK' in locals():\n",
+ " BOOK=\"Linux in easy steps\"\n",
+ "\n",
+ "print BOOK,\" by \",AUTHOR"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Linux in easy steps by Mike McGrath\n",
+ "Linux in easy steps by Mike McGrath\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4, Page No.159"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import platform\n",
+ "plat=platform.system()\n",
+ "print plat,\" system\"\n",
+ "if plat==\"Windows\":\n",
+ " print \"Performing Windows-only tasks\"\n",
+ "else:\n",
+ " print \"Performing Linux-only tasks\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Windows system\n",
+ "Performing Windows-only tasks\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.5, Page No.160"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "def add(x,y):\n",
+ " return x+y\n",
+ "def triple(x):\n",
+ " return (add(x,add(x,x)))\n",
+ "print \"9 + 3 = \",add(9,3)\n",
+ "print \"9 x 3 = \",triple(9)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "9 + 3 = 12\n",
+ "9 x 3 = 27\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.6, Page No.162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "def SQUARE(n):\n",
+ " return n*n\n",
+ "def CUBE(n):\n",
+ " return n*n*n\n",
+ "num=5\n",
+ "print \"Macro SQUARE:\",SQUARE(num)\n",
+ "print \"inline square:\",SQUARE(num)\n",
+ "print \"Macro CUBE:\",CUBE(num)\n",
+ "print \"inline CUBE:\",CUBE(num)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Macro SQUARE: 25\n",
+ "inline square: 25\n",
+ "Macro CUBE: 125\n",
+ "inline CUBE: 125\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7, Page No.164"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "def LINEOUT(str):\n",
+ " print str\n",
+ "def GLUEOUT(a,b):\n",
+ " print a,\" \",b\n",
+ "longer=\"They carried a net \"\n",
+ "line=\"and their hearts \"\n",
+ "LINEOUT(\"In a bowl to sea went wise men three\")\n",
+ "LINEOUT(\"On a brilliant night in June\")\n",
+ "GLUEOUT(longer,line)\n",
+ "LINEOUT(\"On fishing up the moon.\")"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "In a bowl to sea went wise men three\n",
+ "On a brilliant night in June\n",
+ "They carried a net and their hearts \n",
+ "On fishing up the moon.\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.8, Page No.166"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "DEBUG=0\n",
+ "if DEBUG == 1:\n",
+ " def ASSERT(expr):\n",
+ " print expr, \"...\", num\n",
+ " if expr != True:\n",
+ " print \"Fails in file: \"# There is no concept of line in python\n",
+ " print \"at line\"# There is no concept of line in python\n",
+ " else:\n",
+ " print \"Succeeds\"\n",
+ "elif DEBUG == 0:\n",
+ " def ASSERT(expr):\n",
+ " print \"Number is \",num\n",
+ "num = 9\n",
+ "ASSERT(num < 10)\n",
+ "num = num + num\n",
+ "ASSERT(num < 10)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Number is 9\n",
+ "Number is 18\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file