{ "metadata": { "name": "Breakout8Solutions" }, "nbformat": 2, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "import math" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "def perimeter(polygon):\n", " \"\"\"Given a list of vector vertices (in proper order),\n", " returns the perimeter for the associated polygon.\"\"\"\n", " sum = 0\n", " for i in range(len(polygon)):\n", " vertex1 = polygon[i]\n", " vertex2 = polygon[(i+1) % len(polygon)]\n", " distance = math.sqrt(pow(vertex2[0]-vertex1[0],2) + \\\n", " pow(vertex2[1]-vertex1[1],2))\n", " sum += distance\n", " return sum" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "perimeter([[0,0],[1,0],[1,1],[0,1]])" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 3, "text": [ "4.0" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "perimeter([[0,-2],[1,1],[3,3],[5,1],[4,0],[4,-3]])" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 4, "text": [ "17.356451097651515" ] } ], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "class Polygon:\n", " \"\"\"A new class named Polygon.\"\"\"\n", " def __init__(self, vertices=[]):\n", " self.vertices = vertices\n", " print \"(Creating an instance of the class Polygon)\"\n", " def perimeter(self):\n", " sum = 0\n", " for i in range(len(self.vertices)):\n", " vertex1 = self.vertices[i]\n", " vertex2 = self.vertices[(i+1) % len(self.vertices)]\n", " distance = math.sqrt(pow(vertex2[0]-vertex1[0],2)+\\\n", " pow(vertex2[1]-vertex1[1],2))\n", " sum += distance\n", " return sum" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "a = Polygon([[0,-2],[1,1],[3,3],[5,1],[4,0],[4,-3]])\n", "a.perimeter()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "(Creating an instance of the class Polygon)\n" ] }, { "output_type": "pyout", "prompt_number": 6, "text": [ "17.356451097651515" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }