diff options
Diffstat (limited to 'C++_By_Example/Chapter7.ipynb')
-rwxr-xr-x | C++_By_Example/Chapter7.ipynb | 1111 |
1 files changed, 1111 insertions, 0 deletions
diff --git a/C++_By_Example/Chapter7.ipynb b/C++_By_Example/Chapter7.ipynb new file mode 100755 index 00000000..803a02df --- /dev/null +++ b/C++_By_Example/Chapter7.ipynb @@ -0,0 +1,1111 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:987b4dacc78713a17909fe49b56cfa38644dbc08cbbaecbb827fc7655cf390d8" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter7, Structures and File Input/Output" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C28ST1, Page number:592" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from collections import namedtuple\n", + "\n", + "#Structure declaration and definition\n", + "struct_cd_collection = namedtuple(\"struct_cd_collection\", \"title artist num_songs price date_purch\")\n", + "\n", + "#Structure for Cd Collection\n", + "cd1 = struct_cd_collection(\"Red Moon Men\", \"Sam and the Sneeds\", 12,11.95,\"02/13/92\")\n", + "\n", + "#Result\n", + "print \"Here is the CD information :\\n\\n\"\n", + "print \"Title:\",cd1.title,\"\\n\"\n", + "print \"Artist:\",cd1.artist,\"\\n\"\n", + "print \"Songs:\",cd1.num_songs,\"\\n\"\n", + "print \"Price:\",cd1.price,\"\\n\"\n", + "print \"Date purchased:\",cd1.date_purch,\"\\n\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Here is the CD information :\n", + "\n", + "\n", + "Title: Red Moon Men \n", + "\n", + "Artist: Sam and the Sneeds \n", + "\n", + "Songs: 12 \n", + "\n", + "Price: 11.95 \n", + "\n", + "Date purchased: 02/13/92 \n", + "\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C28ST2, Page number:593" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from collections import namedtuple\n", + "\n", + "#Structure initial declaration\n", + "students = namedtuple(\"students\", \"name age average\")\n", + "\n", + "\n", + "#Get data\n", + "print \"What is first student's name? \",\n", + "x=raw_input()\n", + "print \"What is the first student's age? \",\n", + "y=input()\n", + "print \"What is the first student's average ? \",\n", + "z=input()\n", + "\n", + "#Assign data to the structure variable\n", + "student1=students(x,y,z)\n", + "\n", + "print \"\\n\"\n", + "\n", + "#Get data\n", + "print \"What is second student's name? \",\n", + "x=raw_input()\n", + "print \"What is the second student's age? \",\n", + "y=input()\n", + "print \"What is the second student's average ? \",\n", + "z=input()\n", + "\n", + "#Assign data to the structure variable\n", + "student2=students(x,y,z)\n", + "\n", + "#Result\n", + "print \"\\n\\nHere is the student information you entered:\\n\\n\"\n", + "print \"Student #1:\\n\"\n", + "print \"Name: \",student1.name,\"\\n\"\n", + "print \"Age: \",student1.age,\"\\n\"\n", + "print \"Average: \",'%.2f'%student1.average,\"\\n\"\n", + "\n", + "print \"Student #2:\\n\"\n", + "print \"Name: \",student2.name,\"\\n\"\n", + "print \"Age: \",student2.age,\"\\n\"\n", + "print \"Average: \",'%.2f'%student2.average,\"\\n\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "What is first student's name? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "Larry\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the first student's age? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "14\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the first student's average ? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "87.67\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " \n", + "\n", + "What is second student's name? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "Judy\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the second student's age? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "15\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the second student's average ? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "95.38\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " \n", + "\n", + "Here is the student information you entered:\n", + "\n", + "\n", + "Student #1:\n", + "\n", + "Name: Larry \n", + "\n", + "Age: 14 \n", + "\n", + "Average: 87.67 \n", + "\n", + "Student #2:\n", + "\n", + "Name: Judy \n", + "\n", + "Age: 15 \n", + "\n", + "Average: 95.38 \n", + "\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C28ST3, Page number:596" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Function definitions\n", + "\n", + "def fill_structs(student_var):\n", + " #Get student data\n", + " print \"What is student's name? \",\n", + " x=raw_input()\n", + " print \"What is the student's age? \",\n", + " y=input()\n", + " print \"What is the student's average ? \",\n", + " z=input()\n", + " student_var=students(x,y,z)\n", + " return student_var\n", + "\n", + "\n", + "def pr_students(student_var):\n", + " print \"Name: \",student_var.name,\"\\n\",\n", + " print \"Age: \",student_var.age,\"\\n\",\n", + " print \"Average: \",student_var.average,\"\\n\",\n", + "\n", + "#Structure declaration\n", + "from collections import namedtuple\n", + "students=namedtuple(\"students\",\"name age average\")\n", + "\n", + "#Structure variable declaration\n", + "student1=students(\" \",0,0.0)\n", + "student2=students(\" \",0,0.0)\n", + "\n", + "#Stucture variable is passed as copy to the function\n", + "student1=fill_structs(student1)\n", + "student2=fill_structs(student2)\n", + "\n", + "#Result\n", + "print \"\\n\\nHere is the student information you entered:\\n\\n\"\n", + "pr_students(student1)\n", + "pr_students(student2)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "What is student's name? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "Larry\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the student's age? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "14\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the student's average ? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "87.67\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is student's name? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "Judy\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the student's age? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "15\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " What is the student's average ? " + ] + }, + { + "name": "stdout", + "output_type": "stream", + "stream": "stdout", + "text": [ + "97.38\n" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " \n", + "\n", + "Here is the student information you entered:\n", + "\n", + "\n", + "Name: Larry \n", + "Age: 14 \n", + "Average: 87.67 \n", + "Name: Judy \n", + "Age: 15 \n", + "Average: 97.38 \n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C28CUST, Page number:598" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Structure definition\n", + "\n", + "from collections import namedtuple\n", + "customer_rec=namedtuple(\"customer_rec\",\"cust_name balance dist_rate\")\n", + "\n", + "customer=customer_rec(\"Steve Thompson\",431.23,.25)\n", + "print \"Before the update\",customer.cust_name,\" has a balance of $\",'%.2f' %customer.balance,\"\\n\",\n", + "\n", + "#Update the balance\n", + "customer_rec.balance=customer.balance*(1.0-customer.dist_rate)\n", + "\n", + "#Result\n", + "print \"After the update\",customer.cust_name,\" has a balance of $\",'%.2f' %customer.balance,\"\\n\"," + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Before the update Steve Thompson has a balance of $ 431.23 \n", + "After the update Steve Thompson has a balance of $ 323.42 \n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C28STCPY, Page number:599" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Structure declaration\n", + "from collections import namedtuple\n", + "students=namedtuple(\"students\",\"st_name grade age average\")\n", + "\n", + "#Structure variable declaration\n", + "std1=students(\"Joe Brown\",'A',13,91.4)\n", + "std2=students(\" \",\" \",0,0.0)\n", + "std3=students(\" \",\" \",0,0.0)\n", + "\n", + "#Assigning one structure variable to another.\n", + "std2=std1\n", + "std3=std1\n", + "\n", + "\n", + "#Result\n", + "print \"The contents of std2:\\n\",\n", + "print std2.st_name,\", \",std2.grade,\", \",std2.age,\", \",'%.1f' %std2.average,\"\\n\\n\"\n", + "\n", + "print \"The contents of std3:\\n\",\n", + "print std3.st_name,\", \",std3.grade,\", \",std3.age,\", \",'%.1f' %std3.average,\"\\n\\n\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The contents of std2:\n", + "Joe Brown , A , 13 , 91.4 \n", + "\n", + "\n", + "The contents of std3:\n", + "Joe Brown , A , 13 , 91.4 \n", + "\n", + "\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C30WR1, Page number:635" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#open a new file in write mode\n", + "fp = open ( \"C:\\Users\\THEBEST\\Desktop\\NAMES.txt\", \"w\" ) \n", + "\n", + "fp.writelines(\"Michel Langston\\n\")\n", + "fp.writelines(\"Sally Redding\\n\")\n", + "fp.writelines(\"Jane Kirk\\n\")\n", + "fp.writelines(\"Stacy Wikert\\n\")\n", + "fp.writelines(\"Joe Hiquet\\n\")\n", + "\n", + "#Close file\n", + "fp.close()" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C30WR2, Page number:636" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Creates a file in write mode\n", + "fp = open ( \"C:\\Users\\THEBEST\\Desktop\\NUMS.1.txt\", \"w\" ) \n", + "\n", + "if not fp:\n", + " print \"Error opening file.\\n\"\n", + "else:\n", + " for ctr in range(1,101,1):\n", + " fp.write('%d' %ctr) #Writes number from 1-100 into the file\n", + "fp.close()" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C30AP1, Page number:638" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#opens existing file\n", + "fp = open ( \"C:\\Users\\THEBEST\\Desktop\\NAMES.TXT\", \"a\" ) \n", + "\n", + "#Adds to file\n", + "fp.writelines(\"Johnny Smith\\n\")\n", + "fp.writelines(\"Laura Hull \\n\")\n", + "fp.writelines(\"Mark Brown\\n\")\n", + "\n", + "#Close file\n", + "fp.close()" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C30RE1, Page number:640" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#print \"What is the name of the file you want to see? \"\n", + "#filename=raw_input()\n", + "filename = \"NAMES.txt\"\n", + "filename=\"C:/Users/THEBEST/Desktop/\"+ filename\n", + "\n", + "#Open file in read mode\n", + "fp = open (filename,\"rb\")\n", + "if not fp:\n", + " print \"\\n\\n*** That file does not exist ***\\n\"\n", + " exit(0)\n", + "else:\n", + " print in_char\n", + "\n", + "#Close file\n", + "fp.close()" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C30RE2, Page number:641" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#File1 to take backup\n", + "print \"What is the name of the file you want to back up? \"\n", + "in_filename=raw_input()\n", + "\n", + "#File2 to copy contents\n", + "print \"What is the name of the file you want to copy \",in_filename,\"to? \"\n", + "out_filename=raw_input()\n", + "\n", + "in_fp=open(in_filename,\"r\")\n", + "if not in_fp:\n", + " print \"\\n\\n*** \",in_filename,\"does not exist***\\n\"\n", + " exit(0)\n", + "else:\n", + " out_fp=open(out_filename,\"w\")\n", + " if not out_fp:\n", + " print \"\\n\\n*** Error opening \",out_filename,\"***\\n\"\n", + " exit(0)\n", + " else:\n", + " print \"\\nCopying...\\n\" #Reads from old file \n", + " for in_char in in_fp.readlines(): #and copies it to new file\n", + " out_fp.writelines(in_char)\n", + " print \"\\nThe file is copied.\\n\"\n", + "\n", + "#Close all files\n", + "in_fp.close()\n", + "out_fp.close()" + ], + "language": "python", + "metadata": {}, + "outputs": [] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32CON, Page number:664" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "class Sphere: #Class declaration\n", + " def __init__(self, xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + " \n", + " def volume(self):\n", + " return r*r*r*4*PI/3\n", + "\n", + " def surface_area(self):\n", + " return r*r*4*PI\n", + "\n", + "def main():\n", + " s = Sphere(1.0,2.0,3.0,4.0) #Class object\n", + " \n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r #Result\n", + "\n", + "main()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32DES, Page number:665" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " \n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + " #Class object\n", + " s = Sphere(1.0,2.0,3.0,4.0) \n", + " \n", + " #Result\n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + "\n", + "\n", + "main()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n", + "Sphere( 1.0 , 2.0 , 3.0 , 4.0 ) destroyed\n" + ] + } + ], + "prompt_number": 16 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32MEM, Page number:667" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " \n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + " #Class object\n", + " s = Sphere(1.0,2.0,3.0,4.0) \n", + " #Result\n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + " print \"The volume is \",s.volume(),\"\\n\",\n", + " print \"The surface area is \",s.surface_area(),\"\\n\",\n", + "\n", + "main()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n", + "The volume is 268.082346667 \n", + "The surface area is 201.06176 \n", + "Sphere( 1.0 , 2.0 , 3.0 , 4.0 ) destroyed\n" + ] + } + ], + "prompt_number": 17 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32MEM1, Page number:668" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + "\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + " #Class object\n", + " s = Sphere(1.0,2.0,3.0,4.0) \n", + " #Result\n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + " print \"The volume is \",s.volume(),\"\\n\", \n", + " print \"The surface area is \",s.surface_area(),\"\\n\",\n", + "\n", + "main()\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n", + "The volume is 268.082346667 \n", + "The surface area is 201.06176 \n", + "Sphere( 1.0 , 2.0 , 3.0 , 4.0 ) destroyed\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32MEM1A, Page number:669" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + "\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + " #Class object\n", + " s = Sphere(1.0,2.0,3.0,4.0) \n", + " #Result\n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + " print \"The volume is \",(s.r*s.r*s.r*4*PI/3),\"\\n\", #volume() function is expanded here\n", + " print \"The surface area is \",s.surface_area(),\"\\n\",\n", + "\n", + "main()\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n", + "The volume is 268.082346667 \n", + "The surface area is 201.06176 \n", + "Sphere( 1.0 , 2.0 , 3.0 , 4.0 ) destroyed\n" + ] + } + ], + "prompt_number": 19 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32DEF, Page number:671" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord=2.0,zcoord=2.5,radius=1.0):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + "\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + "\n", + " #Class objects\n", + " s = Sphere(1.0) \n", + " t = Sphere(1.0,1.1)\n", + " u = Sphere(1.0,1.1,1.2)\n", + " v = Sphere(1.0,1.1,1.2,1.3)\n", + "\n", + " #Result\n", + " print \"s: X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + " print \"The volume is \",s.volume(),\"\\n\", \n", + " print \"The surface area is \",s.surface_area(),\"\\n\",\n", + "\n", + " print \"t: X=\",t.x,\", Y=\",t.y,\", Z=\",t.z,\", R=\",t.r \n", + " print \"The volume is \",t.volume(),\"\\n\", \n", + " print \"The surface area is \",t.surface_area(),\"\\n\",\n", + "\n", + " print \"u: X=\",u.x,\", Y=\",u.y,\", Z=\",u.z,\", R=\",u.r \n", + " print \"The volume is \",u.volume(),\"\\n\", \n", + " print \"The surface area is \",u.surface_area(),\"\\n\",\n", + "\n", + " print \"v: X=\",v.x,\", Y=\",v.y,\", Z=\",v.z,\", R=\",v.r \n", + " print \"The volume is \",v.volume(),\"\\n\", \n", + " print \"The surface area is \",v.surface_area(),\"\\n\",\n", + "\n", + "\n", + "main()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "s: X= 1.0 , Y= 2.0 , Z= 2.5 , R= 1.0\n", + "The volume is 4.18878666667 \n", + "The surface area is 12.56636 \n", + "t: X= 1.0 , Y= 1.1 , Z= 2.5 , R= 1.0\n", + "The volume is 4.18878666667 \n", + "The surface area is 12.56636 \n", + "u: X= 1.0 , Y= 1.1 , Z= 1.2 , R= 1.0\n", + "The volume is 4.18878666667 \n", + "The surface area is 12.56636 \n", + "v: X= 1.0 , Y= 1.1 , Z= 1.2 , R= 1.3\n", + "The volume is 9.20276430667 \n", + "The surface area is 21.2371484 \n", + "Sphere( 1.0 , 2.0 , 2.5 , 1.0 ) destroyed\n", + "Sphere( 1.0 , 1.1 , 2.5 , 1.0 ) destroyed\n", + "Sphere( 1.0 , 1.1 , 1.2 , 1.0 ) destroyed\n", + "Sphere( 1.0 , 1.1 , 1.2 , 1.3 ) destroyed\n" + ] + } + ], + "prompt_number": 20 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "C32OVCON, Page number:673" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "PI = 3.14159\n", + "\n", + "#Class declaration\n", + "class Sphere: \n", + " def __init__( self,xcoord,ycoord,zcoord,radius):\n", + " self.r = radius\n", + " self.x = xcoord\n", + " self.y = ycoord\n", + " self.z = zcoord\n", + "\n", + " def __del__(self):\n", + " print \"Sphere(\",self.x,\",\" ,self.y,\",\",self.z,\",\",self.r,\") destroyed\"\n", + "\n", + " def volume(self):\n", + " return self.r*self.r*self.r*4*PI/3\n", + "\n", + "\n", + "\n", + " def surface_area(self):\n", + " return self.r*self.r*4*PI\n", + "\n", + "def main():\n", + " #Class object\n", + " s = Sphere(1.0,2.0,3.0,4.0) \n", + " #Result\n", + " print \"X=\",s.x,\", Y=\",s.y,\", Z=\",s.z,\", R=\",s.r \n", + " print \"The volume is \",(s.r*s.r*s.r*4*PI/3),\"\\n\", #volume() function is expanded here\n", + " print \"The surface area is \",s.surface_area(),\"\\n\",\n", + "\n", + "main()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "X= 1.0 , Y= 2.0 , Z= 3.0 , R= 4.0\n", + "The volume is 268.082346667 \n", + "The surface area is 201.06176 \n", + "Sphere( 1.0 , 2.0 , 3.0 , 4.0 ) destroyed\n" + ] + } + ], + "prompt_number": 21 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [] + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file |