첫 번째 목록 요소의 수를 n으로하여 목록 xs를 2로 나눌 gencut (n, xs) 함수를 작성하려고합니다. 다음과 같이 바뀝니다.F #에서 보조 함수 선언 방법
let rec gencut(x, ys) =
let rec gencutaux (x, xs, ys) = // Here's my problem!
match (x, ys) with
| (0, []) -> (List.rev xs, ys)
| (x, []) -> (List.rev xs, ys)
| (0, ys) -> (List.rev xs, ys)
| (x, y :: ys) -> gencutaux (x - 1, y :: xs, ys)
gencut(4, [1;2;3;4;5]);;
그러나 두 번째 줄에는 실수가 있습니다. 콘솔을 실행하려고 할 때마다 콘솔에 다음과 같이 표시됩니다. "이 '다음'블록이 완료되지 않았습니다. 식을 기대하십시오." 이유가 무엇인지 모르거나이를 해결하기 위해 무엇을해야합니까. 모든 통찰력이 인정됩니다.
'gencut'은 내부 함수'gencutaux'를 선언하고 있습니다. 뭔가를 반환해야합니다. (대부분'gencutaux'라고합니다.) – MarcinJuraszek