다음과 같이 작성된 알고리즘이 있지만 해당 코드를 R에 작성해야합니다. 알고리즘과 R 코드가 포함되어 있습니다. 나는 그것이 충분히 잘 표현되어 있는지 확신 할 수 없다. 순차 순서로 R 코드를 작성하는 것은 간단하지 않습니다. 여기에 변수의 모든 값을 제공하지 않아서 유감입니다. 나는 출력을 확신 할 수 없기 때문에 이것이 필요한 것을 보여줄 수 없다. 이것은 이론적 인 질문입니다.적절하게 알고리즘으로 이동 R
알고리즘
VBDMAX = (va - VG) * 0.79 * (dep/D)^-1.21
VBOWMAX = -0.7 * VBDMAX
VBOWX = 0
' SKIP BOW IF -10D<X<15D OR OUTSIDE EDGE OF BARGES
If Y > B/2 Then GoTo 200
If X < -10 * D Then GoTo 200
If X >= 15 * D Then GoTo 200
VBOWX = X * VBOWMAX/(10 * D) + VBOWMAX
If X <= 0 Then GoTo 200
VBOWX = X * (VBDMAX - VBOWMAX)/(5 * D) + VBOWMAX
If X <= 5 * D Then GoTo 200
VBOWX = -X * VBDMAX/(10 * D) + 15 * VBDMAX/10
200 ' end bow
이 내가 R에 "고토"문장을 번역하는 방법 등의 질문을 이해
VBDMAX = (va - VG) * 0.79 * (dep/D)^-1.21
VBOWMAX = -0.7 * VBDMAX
VBOWX = 0
# SKIP BOW IF -10D<X<15D OR OUTSIDE EDGE OF BARGES
VBOWX <- ifelse ((Y>B/2 | X < -10*D | X>=15*D), 0,X*VBOWMAX/(10*D)+VBOWMAX)
VBOWX <- ifelse (X<=0 , X * (VBDMAX - VBOWMAX)/(5 * D) + VBOWMAX,
ifelse(x <=5*D, -X * VBDMAX/(10 * D) + 15 * VBDMAX/10))
원래 코드가 Fortran 77 Fortran보다 우선입니까? Fortran에 IF, ELSE, END IF가 있기 전에? – paisanco
원래 작성된 코드는 확실하지 않지만 확장자는 * .bas입니다. 어떤 프로그램이 사용되었는지 확실하지 않습니다. –
BASIC의 오래된 구식. 나는 GOTO의 예전 인스턴스를 ifelse에 매핑하는 것이 옳은 길에 있다고 생각합니다. – paisanco