Advertisement
Guest User

Untitled

a guest
Jan 10th, 2014
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
F# 3.08 KB | None | 0 0
  1. [<EntryPoint>]
  2. let main argv =
  3.     let one = [1; 2; 3]
  4.     let two = [11; 22; 33]
  5.  
  6.     printfn "append: %A" (List.append  one two)
  7.     printfn "append: %A" (List.append  one [6..9])
  8.  
  9.     printfn "%A" (List.average  [3.; 2.; 1.])
  10.  
  11.     printfn "%A" (List.averageBy ((*) 0.5) [3.; 2.; 1.])
  12.  
  13.     printfn "collect: %A" (List.collect (fun x -> [for i in 5.0..10.0 -> x * i])  [3.; 2.; 1.])
  14.  
  15.     printfn "%b" (List.exists (fun c -> c > 2.)  [3.; 2.; 1.])
  16.     printfn "%b" (List.exists (fun c -> c < 0.)  [3.; 2.; 1.])
  17.  
  18.     printfn "filter: %A" (List.filter (((&&&) 1) >> ((=) 0))  [1..10])
  19.  
  20.     printfn "%d" (List.find (((&&&) 1) >> ((<>) 0))  [1..10])
  21.  
  22.     //printfn "%d" (List.findBy) - функция не существует
  23.  
  24.     printfn "%d" (List.fold (*) 1 [2..10])
  25.  
  26.     printfn "%A" (List.foldBack (fun e ac -> (e * 2)::ac) [2..10] [])
  27.  
  28.     printfn "%b" (List.forall (((&&&) 1) >> ((=) 0)) [2; 4; 6])
  29.     printfn "%b" (List.forall (((&&&) 1) >> ((=) 0)) [2; 4; 6; 1])
  30.  
  31.     printfn "%d" (List.head [2; 4; 6; 1])
  32.  
  33.     printfn "%A" (List.init 10 (fun x -> (x / 3) * 2))
  34.     printfn "asdasd: %A" (List.init 1 (fun x -> (x * 2, x)))
  35.  
  36.     List.iter (fun x -> printf "%d " x) [1; 2; 3]
  37.     printfn ""
  38.  
  39.     List.iter2 (fun x y -> printf "%d %d " x y) [1; 2; 3] [4; 5; 6]
  40.     printfn ""
  41.  
  42.     List.iteri (fun i x -> printf "%d is %d, " i x) [666; 777; 888]
  43.     printfn ""
  44.  
  45.     printfn "LENGTH: %d" (List.length [1..10])
  46.     printfn "LENGTH: %d" (List.length [])
  47.  
  48.     printfn "%A" (List.map ((-) 10) [1..10])
  49.  
  50.     printfn "%A" (List.mapi (fun i x -> (i, i + x)) [4; 7; 1; 0])
  51.  
  52.     printfn "%d" (List.max [4; 7; 1; 0])
  53.     printfn "%d" (List.maxBy ((-) 0) [4; 7; 1; 0])
  54.     printfn "%d" (List.min [4; 7; 1; 0])
  55.     printfn "%d" (List.minBy ((-) 0) [4; 7; 1; 0])
  56.  
  57.     printfn "%d" (List.nth [1..10] 4)
  58.  
  59.     let a, b = (List.partition (((&&&) 1) >> ((=) 0)) [1..10])
  60.     printfn "%A %A" a b
  61.     let c, d = (List.partition ((<) 10) [1..10])
  62.  
  63.     printfn "%A %A" c d
  64.     printfn "%A" (List.permute (fun i -> (i + 1) % 5) [1..5])
  65.  
  66.     printfn "%d" (List.reduce (+) [1..4])
  67.     printfn "%d" (List.reduce (+) [1])
  68.  
  69.     printfn "%A" (List.rev [1..10])
  70.  
  71.     printfn "SORT: %A" (List.sort [-1; -100; 23; 1])
  72.  
  73.     printfn "%A" (List.sortBy abs [1; 2; 5; -2; -1])
  74.  
  75.     let comp x y =
  76.         if (abs x) < (abs y) then -1
  77.         elif (abs x) > (abs y) then 1
  78.         else 0
  79.     printfn "%A" (List.sortWith comp [1; 2; 5; -2; -1])
  80.  
  81.     printfn "%d" (List.sum [1..4])
  82.  
  83.     printfn "%d" (List.sumBy ((&&&) 1) [1; 4; 2; 7; 9])
  84.  
  85.     printfn "%A" (List.tail [1..4])
  86.     printfn "%A" (List.tail [1])
  87.     //printfn "%A" (List.tail []) - вылет
  88.  
  89.     printfn "%A" (List.tryFind (fun x -> x * x > 10) [1..4])
  90.     printfn "%A" (List.tryFind (fun x -> x * x > 10) [1..3])
  91.  
  92.     printfn "%A" (List.tryFindIndex (fun x -> x * x > 10) [1; 6; 7; 8])
  93.     printfn "%A" (List.tryFindIndex (fun x -> x * x > 10) [1..3])
  94.  
  95.     let a, b = (List.unzip [for i in 1..5 -> (i - 1, i * 10)])
  96.     printfn "%A %A" a b
  97.  
  98.     printfn "%A" (List.zip [0..4] [10..10..50])
  99.  
  100.     0 // return an integer exit code
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement