Как F # map2 iter2 ||> работает с Vector? - PullRequest
1 голос
/ 11 октября 2011

Введите два массива пары Vector x, y по паре x, y и найдите функцию двух пар x, y, выведите новый массив ...?

    let v1 = [|for x, y in [3.,3.; 5.,5.; 1.,1.] -> Vector(x, y)|];;
    let v2 = [|for x, y in [1.,1.; 2.,2.; 4.,4.] -> Vector(x, y)|];;

    let data8 v1 v2 = Array.map2 (fun x y -> Vector.CrossProduct) v1 v2

val v1: Vector []= [| 3,3;5,5;1,1 |]

val v2: Vector [] = [| 1,1;2,2;4,4 |]

val data8: 'a [] ->' b [] -> (Vector * Vector -> float) []

data8 v1 v2;val it: (Vector * Vector -> float) [] = [|;;|]

1 Ответ

4 голосов
/ 11 октября 2011

См .: http://fpish.net/topic/Some/0/73895

Вы забыли передать аргументы в Vector.CrossProduct:

let data8 v1 v2 = Array.map2 (fun x y -> Vector.CrossProduct(x, y)) v1 v2
...