let standard = (0, 4.5M, 4L)
let tuples = [| ("A", -2, 1.0M, 2L);
("B", -1, 2.0M, 3L);
("C", 0, 3.0M, 4L);
("D", 1, 4.0M, 5L);
("E", 2, 5.0M, 6L) |]
let qualified = tuples
|> Array.sortBy(fun (_, a, b, c) -> (a, -b, c))
|> Array.filter(fun (_, a, b, c) -> (a, b, c) <= standard)
printfn "%A" qualified
我有一个元组数组和一个标准。我想对元组进行排序并挑选出符合要求的元组。
对于元组,我忽略了第一个元素,将第二个元素和第四个元素按普通方式排序,但也将第三个元素倒序排序;我有一个标准元组,因为所有具有第二个元素的元组至少与标准一样大,而第三个元素至多与标准一样大都是合格的元组。在上面的例子中,合格的元组是:= [| ("C", 0, 3.0M, 4L) |] 条件是:第二个元素>= 0 第三个元素<= 4.5M 第四个元素>= 4L 但是我的代码不起作用!让我知道如何编写一个函数可以完成这项工作!谢谢,周末愉快。约翰