jacob starheim
jacob starheim

Reputation: 89

Why are my arguments undefined in python when I call my function?

I am trying to make a program which gives me the amount of minutes before the two boats collide. the boats are going 60 knot and 70 knot, and the distance between them is 455km. I get an error saying that route, boat_speed and crash is not defined.

def knot_to_km(knot):
    return (knot * 1.852)     

def time_of_impact(route, boat_speed, crash):
    route = 455
    boat_speed = (knot_to_km(60) + knot_to_km(70))
    crash = ((route / boat_speed) / 60)
    return(crash)

print(time_of_impact(route, boat_speed, crash))
    

Upvotes: 0

Views: 36

Answers (1)

Desty
Desty

Reputation: 337

A parameter is a value for input to a function, not for declaring a variable in a function.

def knot_to_km(knot):
    return (knot * 1.852)     

def time_of_impact():
    route = 455
    boat_speed = (knot_to_km(60) + knot_to_km(70))
    crash = ((route / boat_speed) / 60)
    return(crash)

print(time_of_impact())

or

def knot_to_km(knot):
    return (knot * 1.852)     

def time_of_impact(route, boat_speed):
    crash = ((route / boat_speed) / 60)
    return(crash)

route = 455
boat_speed = (knot_to_km(60) + knot_to_km(70))

print(time_of_impact(route, boat_speed))

Remember that the general way is the latter

Upvotes: 2

Related Questions