Hi,
I have been trying to solve a problem,i need to write code to an existing projectile class to calculate the maximum height reached by a projectile ,i have tried all possible solutions but seem stuck,here is the code below
# Canonball in form of a class
# projectile.py
from math import pi,sin,cos
class Projectile:
def __init__(self,angle,velocity,height):
self.xpos=0.0
self.ypos=height
theta=pi*angle/180.0
self.xvel=velocity*cos(theta)
self.yvel=velocity*sin(theta)
def update(self,time):
self.xpos=self.xpos+time*self.xvel
yvel1=self.yvel-9.8*time
self.ypos=self.ypos+time*(self.yvel+yvel1)/2.0
self.yvel=yvel1
def getY(self):
return self.ypos
def maxHeight(self,time):
self.ypos=self.ypos+time*(4.9*time)
return self.ypos
def getX(self):
return self.xpos
def getInputs():
a=input('Enter the launch angle in degrees : ')
v=input('Enter the initial velocity in m/s : ')
h=input('Enter the initial height in meters : ')
t=input('Enter the time interval between position calculations :')
return a,v,h,t
def main():
zenith=0.0
angle,vel,h0,time=getInputs()
cball=Projectile(angle,vel,h0)
while cball.getY()>=0:
cball.update(time)
if cball.yvel==0:
zenith=cball.maxHeight()
print '\nDistance traveled: %0.1f meters .'%(cball.getX())
print '\nMaximum height: ',zenith
Please can somebody help me,Thanks in advance