learning F#, it seems pretty cool, favourite functional language so far.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

SumOfMultiplesTests.fs 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. // This file was auto-generated based on version 1.5.0 of the canonical data.
  2. module SumOfMultiplesTests
  3. open FsUnit.Xunit
  4. open Xunit
  5. open SumOfMultiples
  6. [<Fact>]
  7. let ``No multiples within limit`` () =
  8. sum [3; 5] 1 |> should equal 0
  9. [<Fact>]
  10. let ``One factor has multiples within limit`` () =
  11. sum [3; 5] 4 |> should equal 3
  12. [<Fact>]
  13. let ``More than one multiple within limit`` () =
  14. sum [3] 7 |> should equal 9
  15. [<Fact>]
  16. let ``More than one factor with multiples within limit`` () =
  17. sum [3; 5] 10 |> should equal 23
  18. [<Fact>]
  19. let ``Each multiple is only counted once`` () =
  20. sum [3; 5] 100 |> should equal 2318
  21. [<Fact>]
  22. let ``A much larger limit`` () =
  23. sum [3; 5] 1000 |> should equal 233168
  24. [<Fact>]
  25. let ``Three factors`` () =
  26. sum [7; 13; 17] 20 |> should equal 51
  27. [<Fact>]
  28. let ``Factors not relatively prime`` () =
  29. sum [4; 6] 15 |> should equal 30
  30. [<Fact>]
  31. let ``Some pairs of factors relatively prime and some not`` () =
  32. sum [5; 6; 8] 150 |> should equal 4419
  33. [<Fact>]
  34. let ``One factor is a multiple of another`` () =
  35. sum [5; 25] 51 |> should equal 275
  36. [<Fact>]
  37. let ``Much larger factors`` () =
  38. sum [43; 47] 10000 |> should equal 2203160
  39. [<Fact>]
  40. let ``All numbers are multiples of 1`` () =
  41. sum [1] 100 |> should equal 4950
  42. [<Fact>]
  43. let ``No factors means an empty sum`` () =
  44. sum [] 10000 |> should equal 0
  45. [<Fact>]
  46. let ``The only multiple of 0 is 0`` () =
  47. sum [0] 1 |> should equal 0
  48. [<Fact>]
  49. let ``The factor 0 does not affect the sum of multiples of other factors`` () =
  50. sum [3; 0] 4 |> should equal 3
  51. [<Fact>]
  52. let ``Solutions using include-exclude must extend to cardinality greater than 3`` () =
  53. sum [2; 3; 5; 7; 11] 10000 |> should equal 39614537