Solving Project Euler problems as a way to learn F#.

Click here for additional resources.

Solving Project Euler problems as a way to learn F#.

Click here for additional resources.

Showing posts from January, 2012

- Get link
- Other Apps

- Get link
- Other Apps

The original post Project Euler - Problem 26 was done some time ago, and I recently read about using parallel methods to improve performance, and in this case, Parallel reduces execution time by 25%. Description A unit fraction contains 1 in the numerator. The decimal representation of the unit fractions with denominators 2 to 10 are given: 1/2 = 0.5 1/3 = 0.(3) 1/4 = 0.25 1/5 = 0.2 1/6 = 0.1(6) 1/7 = 0.(142857) 1/8 = 0.125 1/9 = 0.(1) 1/10 = 0.1 Where 0.1(6) means 0.166666..., and has a 1-digit recurring cycle. It can be seen that 1/7 has a 6-digit recurring cycle. Find the value of d < 1000 for which 1/d contains the longest recurring cycle in its decimal fraction part. Solution (using Parallel) open System open System.Threading open System.Threading.Tasks let rec remainders (num:int) (rem:int) (arr:list) = let filteredList = arr |> List.filter (fun x -> x = num) if filteredList.Length > 1 || num = 0 then arr.Lengt

- Get link
- Other Apps