learning F#, it seems pretty cool, favourite functional language so far.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

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