Python 선박 이동 속도함수 질문

조회수 895회

질문이

time, x, y 배열을 함수 인자로 넣으면 x 방향 속도와 y 방향 속도를 계산하여 각 방향의 속도를 배열 Vx, Vy에 저장하는 함수(함수 이름 : getVelocity)를 작성하라 또한 5번에서 작성한 함수에서 Vx, Vy를 리턴하는 코드를 추가하라

이건데 저가 만든 코드는

# x방향속도와 y방향속도를 구해 배열 Vx, Vy에 저장하는 함수를 작성하고 리턴함.
def getVelocity(x,y,time):
    Vx=(x[31]-x[0])/(time[31]-time[0])
    Vy=(y[31]-y[0])/(time[31]-time[0])
    return (Vx,Vy)

이렇게 만들어 봤는데 출력값이 안 나와요. 이렇게 작성하는게 맞는가 싶어서 감히 질문 드립니다.

1 답변

  • 문제의 의도를 정확하게는 알 수 없지만, 리턴되는 Vx, Vy가 배열이어야 한다면 질문자의 코드를 옳지 않겠습니다.

    대략 아래와 같은 코드를 원한 것 아닐까해요.

    def getVelocity(x, y, time):
        Vx = []
        Vy = []
        x0 = x[0]
        y0 = y[0]
        t0 = t[0]
        for x1, y1, t1 in zip(x[1:], y[1:], t[1:]):
            vx = (x1-x0)/(t1-t0)
            vy = (y1-y0)/(t1-t0)
            Vx.append(vx)
            Vy.append(vy)
            x0, y0, t0 = x1, y1, t1
        return Vx, Vy
    
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)